@memberjunction/ng-dashboards 5.38.0 → 5.40.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (321) hide show
  1. package/README.md +14 -7
  2. package/dist/AI/components/agents/agent-configuration.component.js +199 -198
  3. package/dist/AI/components/agents/agent-configuration.component.js.map +1 -1
  4. package/dist/AI/components/analytics/ai-analytics-resource.component.d.ts.map +1 -1
  5. package/dist/AI/components/analytics/ai-analytics-resource.component.js +20 -17
  6. package/dist/AI/components/analytics/ai-analytics-resource.component.js.map +1 -1
  7. package/dist/AI/components/analytics/cost-budget/cost-budget.component.d.ts +15 -0
  8. package/dist/AI/components/analytics/cost-budget/cost-budget.component.d.ts.map +1 -1
  9. package/dist/AI/components/analytics/cost-budget/cost-budget.component.js +166 -58
  10. package/dist/AI/components/analytics/cost-budget/cost-budget.component.js.map +1 -1
  11. package/dist/AI/components/analytics/executive-summary/executive-summary.component.d.ts.map +1 -1
  12. package/dist/AI/components/analytics/executive-summary/executive-summary.component.js +2 -1
  13. package/dist/AI/components/analytics/executive-summary/executive-summary.component.js.map +1 -1
  14. package/dist/AI/components/analytics/model-performance/model-performance.component.d.ts +1 -0
  15. package/dist/AI/components/analytics/model-performance/model-performance.component.d.ts.map +1 -1
  16. package/dist/AI/components/analytics/model-performance/model-performance.component.js +55 -36
  17. package/dist/AI/components/analytics/model-performance/model-performance.component.js.map +1 -1
  18. package/dist/AI/components/analytics/prompt-runs/prompt-run-analysis.component.d.ts +9 -1
  19. package/dist/AI/components/analytics/prompt-runs/prompt-run-analysis.component.d.ts.map +1 -1
  20. package/dist/AI/components/analytics/prompt-runs/prompt-run-analysis.component.js +158 -117
  21. package/dist/AI/components/analytics/prompt-runs/prompt-run-analysis.component.js.map +1 -1
  22. package/dist/AI/components/analytics/usage-patterns/usage-patterns.component.d.ts +1 -0
  23. package/dist/AI/components/analytics/usage-patterns/usage-patterns.component.d.ts.map +1 -1
  24. package/dist/AI/components/analytics/usage-patterns/usage-patterns.component.js +22 -8
  25. package/dist/AI/components/analytics/usage-patterns/usage-patterns.component.js.map +1 -1
  26. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.d.ts +217 -860
  27. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.d.ts.map +1 -1
  28. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.js +1717 -7802
  29. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.js.map +1 -1
  30. package/dist/AI/components/autotagging/components/classify-item-drilldown.component.d.ts +56 -0
  31. package/dist/AI/components/autotagging/components/classify-item-drilldown.component.d.ts.map +1 -0
  32. package/dist/AI/components/autotagging/components/classify-item-drilldown.component.js +423 -0
  33. package/dist/AI/components/autotagging/components/classify-item-drilldown.component.js.map +1 -0
  34. package/dist/AI/components/autotagging/components/classify-item-grid.component.d.ts +70 -0
  35. package/dist/AI/components/autotagging/components/classify-item-grid.component.d.ts.map +1 -0
  36. package/dist/AI/components/autotagging/components/classify-item-grid.component.js +308 -0
  37. package/dist/AI/components/autotagging/components/classify-item-grid.component.js.map +1 -0
  38. package/dist/AI/components/autotagging/components/classify-org-context-editor.component.d.ts +29 -0
  39. package/dist/AI/components/autotagging/components/classify-org-context-editor.component.d.ts.map +1 -0
  40. package/dist/AI/components/autotagging/components/classify-org-context-editor.component.js +186 -0
  41. package/dist/AI/components/autotagging/components/classify-org-context-editor.component.js.map +1 -0
  42. package/dist/AI/components/autotagging/components/classify-overview-analytics.component.d.ts +69 -0
  43. package/dist/AI/components/autotagging/components/classify-overview-analytics.component.d.ts.map +1 -0
  44. package/dist/AI/components/autotagging/components/classify-overview-analytics.component.js +278 -0
  45. package/dist/AI/components/autotagging/components/classify-overview-analytics.component.js.map +1 -0
  46. package/dist/AI/components/autotagging/components/classify-seed-taxonomy.component.d.ts +73 -0
  47. package/dist/AI/components/autotagging/components/classify-seed-taxonomy.component.d.ts.map +1 -0
  48. package/dist/AI/components/autotagging/components/classify-seed-taxonomy.component.js +393 -0
  49. package/dist/AI/components/autotagging/components/classify-seed-taxonomy.component.js.map +1 -0
  50. package/dist/AI/components/autotagging/dialogs/classify-setup-wizard.component.d.ts +122 -0
  51. package/dist/AI/components/autotagging/dialogs/classify-setup-wizard.component.d.ts.map +1 -0
  52. package/dist/AI/components/autotagging/dialogs/classify-setup-wizard.component.js +908 -0
  53. package/dist/AI/components/autotagging/dialogs/classify-setup-wizard.component.js.map +1 -0
  54. package/dist/AI/components/autotagging/dialogs/dry-run-preview.dialog.component.d.ts +87 -0
  55. package/dist/AI/components/autotagging/dialogs/dry-run-preview.dialog.component.d.ts.map +1 -0
  56. package/dist/AI/components/autotagging/dialogs/dry-run-preview.dialog.component.js +475 -0
  57. package/dist/AI/components/autotagging/dialogs/dry-run-preview.dialog.component.js.map +1 -0
  58. package/dist/AI/components/autotagging/dialogs/item-detail.dialog.component.d.ts +29 -0
  59. package/dist/AI/components/autotagging/dialogs/item-detail.dialog.component.d.ts.map +1 -0
  60. package/dist/AI/components/autotagging/dialogs/item-detail.dialog.component.js +208 -0
  61. package/dist/AI/components/autotagging/dialogs/item-detail.dialog.component.js.map +1 -0
  62. package/dist/AI/components/autotagging/dialogs/no-content-type-warning.dialog.component.d.ts +21 -0
  63. package/dist/AI/components/autotagging/dialogs/no-content-type-warning.dialog.component.d.ts.map +1 -0
  64. package/dist/AI/components/autotagging/dialogs/no-content-type-warning.dialog.component.js +70 -0
  65. package/dist/AI/components/autotagging/dialogs/no-content-type-warning.dialog.component.js.map +1 -0
  66. package/dist/AI/components/autotagging/dialogs/source-type-form.dialog.component.d.ts +333 -0
  67. package/dist/AI/components/autotagging/dialogs/source-type-form.dialog.component.d.ts.map +1 -0
  68. package/dist/AI/components/autotagging/dialogs/source-type-form.dialog.component.js +2125 -0
  69. package/dist/AI/components/autotagging/dialogs/source-type-form.dialog.component.js.map +1 -0
  70. package/dist/AI/components/autotagging/shared/classify.dryrun.d.ts +61 -0
  71. package/dist/AI/components/autotagging/shared/classify.dryrun.d.ts.map +1 -0
  72. package/dist/AI/components/autotagging/shared/classify.dryrun.js +78 -0
  73. package/dist/AI/components/autotagging/shared/classify.dryrun.js.map +1 -0
  74. package/dist/AI/components/autotagging/shared/classify.format.d.ts +58 -0
  75. package/dist/AI/components/autotagging/shared/classify.format.d.ts.map +1 -0
  76. package/dist/AI/components/autotagging/shared/classify.format.js +260 -0
  77. package/dist/AI/components/autotagging/shared/classify.format.js.map +1 -0
  78. package/dist/AI/components/autotagging/shared/classify.types.d.ts +319 -0
  79. package/dist/AI/components/autotagging/shared/classify.types.d.ts.map +1 -0
  80. package/dist/AI/components/autotagging/shared/classify.types.js +6 -0
  81. package/dist/AI/components/autotagging/shared/classify.types.js.map +1 -0
  82. package/dist/AI/components/autotagging/tabs/health-tab.component.d.ts +103 -0
  83. package/dist/AI/components/autotagging/tabs/health-tab.component.d.ts.map +1 -0
  84. package/dist/AI/components/autotagging/tabs/health-tab.component.js +571 -0
  85. package/dist/AI/components/autotagging/tabs/health-tab.component.js.map +1 -0
  86. package/dist/AI/components/autotagging/tabs/history-tab.component.d.ts +77 -0
  87. package/dist/AI/components/autotagging/tabs/history-tab.component.d.ts.map +1 -0
  88. package/dist/AI/components/autotagging/tabs/history-tab.component.js +519 -0
  89. package/dist/AI/components/autotagging/tabs/history-tab.component.js.map +1 -0
  90. package/dist/AI/components/autotagging/tabs/inbox-tab.component.d.ts +107 -0
  91. package/dist/AI/components/autotagging/tabs/inbox-tab.component.d.ts.map +1 -0
  92. package/dist/AI/components/autotagging/tabs/inbox-tab.component.js +719 -0
  93. package/dist/AI/components/autotagging/tabs/inbox-tab.component.js.map +1 -0
  94. package/dist/AI/components/autotagging/tabs/pipeline-tab.component.d.ts +131 -0
  95. package/dist/AI/components/autotagging/tabs/pipeline-tab.component.d.ts.map +1 -0
  96. package/dist/AI/components/autotagging/tabs/pipeline-tab.component.js +813 -0
  97. package/dist/AI/components/autotagging/tabs/pipeline-tab.component.js.map +1 -0
  98. package/dist/AI/components/autotagging/tabs/sources-tab.component.d.ts +177 -0
  99. package/dist/AI/components/autotagging/tabs/sources-tab.component.d.ts.map +1 -0
  100. package/dist/AI/components/autotagging/tabs/sources-tab.component.js +1465 -0
  101. package/dist/AI/components/autotagging/tabs/sources-tab.component.js.map +1 -0
  102. package/dist/AI/components/autotagging/tabs/tags-tab.component.d.ts +78 -0
  103. package/dist/AI/components/autotagging/tabs/tags-tab.component.d.ts.map +1 -0
  104. package/dist/AI/components/autotagging/tabs/tags-tab.component.js +492 -0
  105. package/dist/AI/components/autotagging/tabs/tags-tab.component.js.map +1 -0
  106. package/dist/AI/components/autotagging/tabs/taxonomy-tab.component.d.ts +397 -0
  107. package/dist/AI/components/autotagging/tabs/taxonomy-tab.component.d.ts.map +1 -0
  108. package/dist/AI/components/autotagging/tabs/taxonomy-tab.component.js +3490 -0
  109. package/dist/AI/components/autotagging/tabs/taxonomy-tab.component.js.map +1 -0
  110. package/dist/AI/components/autotagging/tabs/types-tab.component.d.ts +56 -0
  111. package/dist/AI/components/autotagging/tabs/types-tab.component.d.ts.map +1 -0
  112. package/dist/AI/components/autotagging/tabs/types-tab.component.js +271 -0
  113. package/dist/AI/components/autotagging/tabs/types-tab.component.js.map +1 -0
  114. package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts +3 -0
  115. package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts.map +1 -1
  116. package/dist/AI/components/duplicates/duplicate-detection-resource.component.js +306 -290
  117. package/dist/AI/components/duplicates/duplicate-detection-resource.component.js.map +1 -1
  118. package/dist/AI/components/execution-monitoring.component.js +1 -1
  119. package/dist/AI/components/execution-monitoring.component.js.map +1 -1
  120. package/dist/AI/components/models/model-management.component.js +209 -208
  121. package/dist/AI/components/models/model-management.component.js.map +1 -1
  122. package/dist/AI/components/prompts/prompt-management.component.js +130 -128
  123. package/dist/AI/components/prompts/prompt-management.component.js.map +1 -1
  124. package/dist/AI/components/requests/agent-requests-resource.component.js +61 -61
  125. package/dist/AI/components/requests/agent-requests-resource.component.js.map +1 -1
  126. package/dist/AI/components/system/system-configuration.component.js +17 -17
  127. package/dist/AI/components/system/system-configuration.component.js.map +1 -1
  128. package/dist/AI/components/tags/tags-resource.component.d.ts +1 -0
  129. package/dist/AI/components/tags/tags-resource.component.d.ts.map +1 -1
  130. package/dist/AI/components/tags/tags-resource.component.js +578 -538
  131. package/dist/AI/components/tags/tags-resource.component.js.map +1 -1
  132. package/dist/AI/components/vectors/vector-management-resource.component.d.ts +3 -0
  133. package/dist/AI/components/vectors/vector-management-resource.component.d.ts.map +1 -1
  134. package/dist/AI/components/vectors/vector-management-resource.component.js +331 -303
  135. package/dist/AI/components/vectors/vector-management-resource.component.js.map +1 -1
  136. package/dist/AI/services/ai-instrumentation.service.d.ts +5 -0
  137. package/dist/AI/services/ai-instrumentation.service.d.ts.map +1 -1
  138. package/dist/AI/services/ai-instrumentation.service.js +14 -2
  139. package/dist/AI/services/ai-instrumentation.service.js.map +1 -1
  140. package/dist/AI/services/cache-metrics.d.ts +50 -0
  141. package/dist/AI/services/cache-metrics.d.ts.map +1 -0
  142. package/dist/AI/services/cache-metrics.js +43 -0
  143. package/dist/AI/services/cache-metrics.js.map +1 -0
  144. package/dist/APIKeys/api-applications-panel.component.js +2 -2
  145. package/dist/APIKeys/api-key-create-dialog.component.js +2 -2
  146. package/dist/APIKeys/api-key-edit-panel.component.js +2 -2
  147. package/dist/APIKeys/api-keys-resource.component.js +132 -131
  148. package/dist/APIKeys/api-keys-resource.component.js.map +1 -1
  149. package/dist/Actions/components/actions-overview.component.js +141 -141
  150. package/dist/Actions/components/actions-overview.component.js.map +1 -1
  151. package/dist/Actions/components/execution-monitoring.component.js +15 -15
  152. package/dist/Actions/components/execution-monitoring.component.js.map +1 -1
  153. package/dist/Actions/components/explorer/action-explorer.component.d.ts +0 -5
  154. package/dist/Actions/components/explorer/action-explorer.component.d.ts.map +1 -1
  155. package/dist/Actions/components/explorer/action-explorer.component.js +139 -212
  156. package/dist/Actions/components/explorer/action-explorer.component.js.map +1 -1
  157. package/dist/Admin/admin-data-schema.component.js +2 -2
  158. package/dist/Admin/admin-data-schema.component.js.map +1 -1
  159. package/dist/Admin/admin-dev-tools-resource.component.js +2 -2
  160. package/dist/Admin/admin-dev-tools-resource.component.js.map +1 -1
  161. package/dist/Admin/admin-identity-access.component.js +2 -2
  162. package/dist/Admin/admin-identity-access.component.js.map +1 -1
  163. package/dist/Admin/admin-monitoring.component.js +2 -2
  164. package/dist/Admin/admin-monitoring.component.js.map +1 -1
  165. package/dist/ApplicationRoles/application-roles-resource.component.js +54 -49
  166. package/dist/ApplicationRoles/application-roles-resource.component.js.map +1 -1
  167. package/dist/Communication/communication-logs-resource.component.d.ts +6 -0
  168. package/dist/Communication/communication-logs-resource.component.d.ts.map +1 -1
  169. package/dist/Communication/communication-logs-resource.component.js +72 -50
  170. package/dist/Communication/communication-logs-resource.component.js.map +1 -1
  171. package/dist/Communication/communication-monitor-resource.component.js +103 -102
  172. package/dist/Communication/communication-monitor-resource.component.js.map +1 -1
  173. package/dist/Communication/communication-providers-resource.component.js +52 -51
  174. package/dist/Communication/communication-providers-resource.component.js.map +1 -1
  175. package/dist/Communication/communication-runs-resource.component.js +39 -38
  176. package/dist/Communication/communication-runs-resource.component.js.map +1 -1
  177. package/dist/Communication/communication-templates-resource.component.d.ts +6 -0
  178. package/dist/Communication/communication-templates-resource.component.d.ts.map +1 -1
  179. package/dist/Communication/communication-templates-resource.component.js +92 -89
  180. package/dist/Communication/communication-templates-resource.component.js.map +1 -1
  181. package/dist/Credentials/components/credentials-audit-resource.component.js +136 -135
  182. package/dist/Credentials/components/credentials-audit-resource.component.js.map +1 -1
  183. package/dist/Credentials/components/credentials-categories-resource.component.js +155 -152
  184. package/dist/Credentials/components/credentials-categories-resource.component.js.map +1 -1
  185. package/dist/Credentials/components/credentials-list-resource.component.js +119 -118
  186. package/dist/Credentials/components/credentials-list-resource.component.js.map +1 -1
  187. package/dist/Credentials/components/credentials-overview-resource.component.js +129 -128
  188. package/dist/Credentials/components/credentials-overview-resource.component.js.map +1 -1
  189. package/dist/Credentials/components/credentials-types-resource.component.js +107 -106
  190. package/dist/Credentials/components/credentials-types-resource.component.js.map +1 -1
  191. package/dist/DataExplorer/data-explorer-dashboard.component.d.ts +31 -340
  192. package/dist/DataExplorer/data-explorer-dashboard.component.d.ts.map +1 -1
  193. package/dist/DataExplorer/data-explorer-dashboard.component.js +468 -1958
  194. package/dist/DataExplorer/data-explorer-dashboard.component.js.map +1 -1
  195. package/dist/DataExplorer/data-explorer-resource.component.d.ts.map +1 -1
  196. package/dist/DataExplorer/data-explorer-resource.component.js +10 -0
  197. package/dist/DataExplorer/data-explorer-resource.component.js.map +1 -1
  198. package/dist/DatabaseDesigner/components/database-designer-dashboard.component.js +1 -1
  199. package/dist/DatabaseDesigner/components/entity-list.component.js +115 -114
  200. package/dist/DatabaseDesigner/components/entity-list.component.js.map +1 -1
  201. package/dist/DatabaseDesigner/database-designer-dashboards.module.d.ts +5 -6
  202. package/dist/DatabaseDesigner/database-designer-dashboards.module.d.ts.map +1 -1
  203. package/dist/DatabaseDesigner/database-designer-dashboards.module.js +4 -5
  204. package/dist/DatabaseDesigner/database-designer-dashboards.module.js.map +1 -1
  205. package/dist/DevTools/app-state-inspector.component.js +18 -17
  206. package/dist/DevTools/app-state-inspector.component.js.map +1 -1
  207. package/dist/DevTools/class-registry.component.js +88 -85
  208. package/dist/DevTools/class-registry.component.js.map +1 -1
  209. package/dist/DevTools/event-monitor.component.js +155 -150
  210. package/dist/DevTools/event-monitor.component.js.map +1 -1
  211. package/dist/DevTools/graphql-console.component.js +245 -243
  212. package/dist/DevTools/graphql-console.component.js.map +1 -1
  213. package/dist/DevTools/layout-inspector.component.js +18 -17
  214. package/dist/DevTools/layout-inspector.component.js.map +1 -1
  215. package/dist/EntityAdmin/entity-admin-dashboard.component.js +20 -19
  216. package/dist/EntityAdmin/entity-admin-dashboard.component.js.map +1 -1
  217. package/dist/Home/home-dashboard.component.js +2 -2
  218. package/dist/Integration/components/activity/activity.component.d.ts.map +1 -1
  219. package/dist/Integration/components/activity/activity.component.js +236 -229
  220. package/dist/Integration/components/activity/activity.component.js.map +1 -1
  221. package/dist/Integration/components/connections/connections.component.js +390 -389
  222. package/dist/Integration/components/connections/connections.component.js.map +1 -1
  223. package/dist/Integration/components/overview/overview.component.js +2 -2
  224. package/dist/KnowledgeHub/components/analytics/analytics-resource.component.d.ts.map +1 -1
  225. package/dist/KnowledgeHub/components/analytics/analytics-resource.component.js +14 -11
  226. package/dist/KnowledgeHub/components/analytics/analytics-resource.component.js.map +1 -1
  227. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.d.ts +27 -2
  228. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.d.ts.map +1 -1
  229. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.js +244 -119
  230. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.js.map +1 -1
  231. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js +293 -291
  232. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js.map +1 -1
  233. package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.js +62 -61
  234. package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.js.map +1 -1
  235. package/dist/KnowledgeHub/components/visualize/record-drilldown/record-drilldown.component.d.ts +65 -0
  236. package/dist/KnowledgeHub/components/visualize/record-drilldown/record-drilldown.component.d.ts.map +1 -0
  237. package/dist/KnowledgeHub/components/visualize/record-drilldown/record-drilldown.component.js +176 -0
  238. package/dist/KnowledgeHub/components/visualize/record-drilldown/record-drilldown.component.js.map +1 -0
  239. package/dist/KnowledgeHub/components/visualize/tag-cloud/tag-cloud.component.d.ts +81 -0
  240. package/dist/KnowledgeHub/components/visualize/tag-cloud/tag-cloud.component.d.ts.map +1 -0
  241. package/dist/KnowledgeHub/components/visualize/tag-cloud/tag-cloud.component.js +308 -0
  242. package/dist/KnowledgeHub/components/visualize/tag-cloud/tag-cloud.component.js.map +1 -0
  243. package/dist/KnowledgeHub/components/visualize/visualize-resource.component.d.ts +85 -0
  244. package/dist/KnowledgeHub/components/visualize/visualize-resource.component.d.ts.map +1 -0
  245. package/dist/KnowledgeHub/components/visualize/visualize-resource.component.js +362 -0
  246. package/dist/KnowledgeHub/components/visualize/visualize-resource.component.js.map +1 -0
  247. package/dist/KnowledgeHub/index.d.ts +3 -0
  248. package/dist/KnowledgeHub/index.d.ts.map +1 -1
  249. package/dist/KnowledgeHub/index.js +3 -0
  250. package/dist/KnowledgeHub/index.js.map +1 -1
  251. package/dist/Lists/components/lists-browse-resource.component.d.ts +6 -2
  252. package/dist/Lists/components/lists-browse-resource.component.d.ts.map +1 -1
  253. package/dist/Lists/components/lists-browse-resource.component.js +525 -566
  254. package/dist/Lists/components/lists-browse-resource.component.js.map +1 -1
  255. package/dist/Lists/components/lists-categories-resource.component.js +135 -134
  256. package/dist/Lists/components/lists-categories-resource.component.js.map +1 -1
  257. package/dist/Lists/components/lists-my-lists-resource.component.js +199 -198
  258. package/dist/Lists/components/lists-my-lists-resource.component.js.map +1 -1
  259. package/dist/MCP/components/mcp-server-dialog.component.js +2 -2
  260. package/dist/MCP/mcp-dashboard.component.js +443 -438
  261. package/dist/MCP/mcp-dashboard.component.js.map +1 -1
  262. package/dist/QueryBrowser/query-browser-resource.component.js +1 -1
  263. package/dist/QueryBrowser/query-browser-resource.component.js.map +1 -1
  264. package/dist/Scheduling/components/scheduling-activity.component.d.ts.map +1 -1
  265. package/dist/Scheduling/components/scheduling-activity.component.js +146 -147
  266. package/dist/Scheduling/components/scheduling-activity.component.js.map +1 -1
  267. package/dist/Scheduling/components/scheduling-jobs.component.js +76 -75
  268. package/dist/Scheduling/components/scheduling-jobs.component.js.map +1 -1
  269. package/dist/Scheduling/components/scheduling-overview.component.js +97 -96
  270. package/dist/Scheduling/components/scheduling-overview.component.js.map +1 -1
  271. package/dist/Scheduling/scheduling-dashboard.component.js +24 -22
  272. package/dist/Scheduling/scheduling-dashboard.component.js.map +1 -1
  273. package/dist/Scheduling/services/scheduling-instrumentation.service.d.ts +2 -0
  274. package/dist/Scheduling/services/scheduling-instrumentation.service.d.ts.map +1 -1
  275. package/dist/Scheduling/services/scheduling-instrumentation.service.js +1 -0
  276. package/dist/Scheduling/services/scheduling-instrumentation.service.js.map +1 -1
  277. package/dist/Testing/components/testing-dashboard-tab-resource.component.js +1 -1
  278. package/dist/Testing/components/testing-explorer.component.d.ts +14 -4
  279. package/dist/Testing/components/testing-explorer.component.d.ts.map +1 -1
  280. package/dist/Testing/components/testing-explorer.component.js +436 -427
  281. package/dist/Testing/components/testing-explorer.component.js.map +1 -1
  282. package/dist/Testing/components/testing-runs-resource.component.js +1 -1
  283. package/dist/Testing/components/testing-runs.component.js +116 -115
  284. package/dist/Testing/components/testing-runs.component.js.map +1 -1
  285. package/dist/Testing/testing-dashboard.component.js +6 -7
  286. package/dist/Testing/testing-dashboard.component.js.map +1 -1
  287. package/dist/VersionHistory/components/labels-resource.component.js +173 -172
  288. package/dist/VersionHistory/components/labels-resource.component.js.map +1 -1
  289. package/dist/VersionHistory/components/restore-resource.component.d.ts +6 -0
  290. package/dist/VersionHistory/components/restore-resource.component.d.ts.map +1 -1
  291. package/dist/VersionHistory/components/restore-resource.component.js +116 -92
  292. package/dist/VersionHistory/components/restore-resource.component.js.map +1 -1
  293. package/dist/ai-dashboards.module.d.ts +57 -35
  294. package/dist/ai-dashboards.module.d.ts.map +1 -1
  295. package/dist/ai-dashboards.module.js +80 -1
  296. package/dist/ai-dashboards.module.js.map +1 -1
  297. package/dist/communication-dashboards.module.d.ts +1 -1
  298. package/dist/communication-dashboards.module.d.ts.map +1 -1
  299. package/dist/communication-dashboards.module.js +7 -1
  300. package/dist/communication-dashboards.module.js.map +1 -1
  301. package/dist/data-explorer-dashboards.module.d.ts +12 -14
  302. package/dist/data-explorer-dashboards.module.d.ts.map +1 -1
  303. package/dist/data-explorer-dashboards.module.js +5 -14
  304. package/dist/data-explorer-dashboards.module.js.map +1 -1
  305. package/dist/public-api.d.ts +3 -0
  306. package/dist/public-api.d.ts.map +1 -1
  307. package/dist/public-api.js +3 -0
  308. package/dist/public-api.js.map +1 -1
  309. package/dist/testing-dashboards.module.d.ts +4 -5
  310. package/dist/testing-dashboards.module.d.ts.map +1 -1
  311. package/dist/testing-dashboards.module.js +7 -5
  312. package/dist/testing-dashboards.module.js.map +1 -1
  313. package/package.json +57 -54
  314. package/dist/DataExplorer/components/filter-dialog/filter-dialog.component.d.ts +0 -79
  315. package/dist/DataExplorer/components/filter-dialog/filter-dialog.component.d.ts.map +0 -1
  316. package/dist/DataExplorer/components/filter-dialog/filter-dialog.component.js +0 -195
  317. package/dist/DataExplorer/components/filter-dialog/filter-dialog.component.js.map +0 -1
  318. package/dist/DataExplorer/components/view-selector/view-selector.component.d.ts +0 -226
  319. package/dist/DataExplorer/components/view-selector/view-selector.component.d.ts.map +0 -1
  320. package/dist/DataExplorer/components/view-selector/view-selector.component.js +0 -861
  321. package/dist/DataExplorer/components/view-selector/view-selector.component.js.map +0 -1
@@ -21,44 +21,15 @@ import * as i6 from "@memberjunction/ng-ui-components";
21
21
  import * as i7 from "@memberjunction/ng-shared-generic";
22
22
  const _c0 = a0 => ({ node: a0, depth: 0 });
23
23
  const _c1 = (a0, a1) => ({ node: a0, depth: a1 });
24
- const _forTrack0 = ($index, $item) => $item.TagID;
25
- function ListsBrowseResource_Conditional_17_For_5_Template(rf, ctx) { if (rf & 1) {
26
- const _r3 = i0.ɵɵgetCurrentView();
27
- i0.ɵɵelementStart(0, "button", 31);
28
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_17_For_5_Template_button_click_0_listener() { const f_r4 = i0.ɵɵrestoreView(_r3).$implicit; const ctx_r4 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r4.removeTagFilter(f_r4.TagID)); });
29
- i0.ɵɵtext(1);
30
- i0.ɵɵelement(2, "i", 32);
24
+ function ListsBrowseResource_Conditional_15_Template(rf, ctx) { if (rf & 1) {
25
+ i0.ɵɵelementStart(0, "div", 14);
26
+ i0.ɵɵelement(1, "mj-loading", 26);
31
27
  i0.ɵɵelementEnd();
32
- } if (rf & 2) {
33
- const f_r4 = ctx.$implicit;
34
- i0.ɵɵadvance();
35
- i0.ɵɵtextInterpolate1(" ", f_r4.Name, " ");
36
28
  } }
37
- function ListsBrowseResource_Conditional_17_Template(rf, ctx) { if (rf & 1) {
29
+ function ListsBrowseResource_Conditional_16_Template(rf, ctx) { if (rf & 1) {
38
30
  const _r2 = i0.ɵɵgetCurrentView();
39
- i0.ɵɵelementStart(0, "div", 14)(1, "span", 27);
40
- i0.ɵɵelement(2, "i", 28);
41
- i0.ɵɵtext(3, " Filtering by tag: ");
42
- i0.ɵɵelementEnd();
43
- i0.ɵɵrepeaterCreate(4, ListsBrowseResource_Conditional_17_For_5_Template, 3, 1, "button", 29, _forTrack0);
44
- i0.ɵɵelementStart(6, "button", 30);
45
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_17_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r2); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.clearTagFilters()); });
46
- i0.ɵɵtext(7, " Clear all ");
47
- i0.ɵɵelementEnd()();
48
- } if (rf & 2) {
49
- const ctx_r4 = i0.ɵɵnextContext();
50
- i0.ɵɵadvance(4);
51
- i0.ɵɵrepeater(ctx_r4.tagFilters);
52
- } }
53
- function ListsBrowseResource_Conditional_18_Template(rf, ctx) { if (rf & 1) {
54
- i0.ɵɵelementStart(0, "div", 15);
55
- i0.ɵɵelement(1, "mj-loading", 33);
56
- i0.ɵɵelementEnd();
57
- } }
58
- function ListsBrowseResource_Conditional_19_Template(rf, ctx) { if (rf & 1) {
59
- const _r6 = i0.ɵɵgetCurrentView();
60
- i0.ɵɵelementStart(0, "div", 16)(1, "div", 34);
61
- i0.ɵɵelement(2, "div", 35)(3, "i", 36);
31
+ i0.ɵɵelementStart(0, "div", 15)(1, "div", 27);
32
+ i0.ɵɵelement(2, "div", 28)(3, "i", 29);
62
33
  i0.ɵɵelementEnd();
63
34
  i0.ɵɵelementStart(4, "h3");
64
35
  i0.ɵɵtext(5, "No Lists Yet");
@@ -66,31 +37,31 @@ function ListsBrowseResource_Conditional_19_Template(rf, ctx) { if (rf & 1) {
66
37
  i0.ɵɵelementStart(6, "p");
67
38
  i0.ɵɵtext(7, "Lists help you organize and track groups of records across your data.");
68
39
  i0.ɵɵelementEnd();
69
- i0.ɵɵelementStart(8, "div", 37)(9, "div", 38);
70
- i0.ɵɵelement(10, "i", 39);
40
+ i0.ɵɵelementStart(8, "div", 30)(9, "div", 31);
41
+ i0.ɵɵelement(10, "i", 32);
71
42
  i0.ɵɵelementStart(11, "span");
72
43
  i0.ɵɵtext(12, "Group records from any entity");
73
44
  i0.ɵɵelementEnd()();
74
- i0.ɵɵelementStart(13, "div", 38);
75
- i0.ɵɵelement(14, "i", 39);
45
+ i0.ɵɵelementStart(13, "div", 31);
46
+ i0.ɵɵelement(14, "i", 32);
76
47
  i0.ɵɵelementStart(15, "span");
77
48
  i0.ɵɵtext(16, "Organize with categories");
78
49
  i0.ɵɵelementEnd()();
79
- i0.ɵɵelementStart(17, "div", 38);
80
- i0.ɵɵelement(18, "i", 39);
50
+ i0.ɵɵelementStart(17, "div", 31);
51
+ i0.ɵɵelement(18, "i", 32);
81
52
  i0.ɵɵelementStart(19, "span");
82
53
  i0.ɵɵtext(20, "Quick access from any view");
83
54
  i0.ɵɵelementEnd()()();
84
- i0.ɵɵelementStart(21, "button", 40);
85
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_19_Template_button_click_21_listener() { i0.ɵɵrestoreView(_r6); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.createNewList()); });
86
- i0.ɵɵelement(22, "i", 11);
55
+ i0.ɵɵelementStart(21, "button", 33);
56
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_16_Template_button_click_21_listener() { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.createNewList()); });
57
+ i0.ɵɵelement(22, "i", 7);
87
58
  i0.ɵɵtext(23, " Create Your First List ");
88
59
  i0.ɵɵelementEnd()();
89
60
  } }
90
- function ListsBrowseResource_Conditional_20_Template(rf, ctx) { if (rf & 1) {
91
- const _r7 = i0.ɵɵgetCurrentView();
92
- i0.ɵɵelementStart(0, "div", 17)(1, "div", 41);
93
- i0.ɵɵelement(2, "i", 42);
61
+ function ListsBrowseResource_Conditional_17_Template(rf, ctx) { if (rf & 1) {
62
+ const _r4 = i0.ɵɵgetCurrentView();
63
+ i0.ɵɵelementStart(0, "div", 16)(1, "div", 34);
64
+ i0.ɵɵelement(2, "i", 35);
94
65
  i0.ɵɵelementEnd();
95
66
  i0.ɵɵelementStart(3, "h3");
96
67
  i0.ɵɵtext(4, "No Results Found");
@@ -98,736 +69,736 @@ function ListsBrowseResource_Conditional_20_Template(rf, ctx) { if (rf & 1) {
98
69
  i0.ɵɵelementStart(5, "p");
99
70
  i0.ɵɵtext(6, "No lists match your current filters.");
100
71
  i0.ɵɵelementEnd();
101
- i0.ɵɵelementStart(7, "p", 43);
72
+ i0.ɵɵelementStart(7, "p", 36);
102
73
  i0.ɵɵtext(8, "Try adjusting your search or filters.");
103
74
  i0.ɵɵelementEnd();
104
- i0.ɵɵelementStart(9, "button", 44);
105
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_20_Template_button_click_9_listener() { i0.ɵɵrestoreView(_r7); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.clearFilters()); });
75
+ i0.ɵɵelementStart(9, "button", 37);
76
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_17_Template_button_click_9_listener() { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.clearFilters()); });
106
77
  i0.ɵɵtext(10, "Clear All Filters");
107
78
  i0.ɵɵelementEnd()();
108
79
  } }
109
- function ListsBrowseResource_Conditional_21_For_9_Template(rf, ctx) { if (rf & 1) {
110
- i0.ɵɵelementStart(0, "option", 49);
80
+ function ListsBrowseResource_Conditional_18_For_9_Template(rf, ctx) { if (rf & 1) {
81
+ i0.ɵɵelementStart(0, "option", 42);
111
82
  i0.ɵɵtext(1);
112
83
  i0.ɵɵelementEnd();
113
84
  } if (rf & 2) {
114
- const opt_r9 = ctx.$implicit;
115
- i0.ɵɵproperty("value", opt_r9.value);
85
+ const opt_r6 = ctx.$implicit;
86
+ i0.ɵɵproperty("value", opt_r6.value);
116
87
  i0.ɵɵadvance();
117
- i0.ɵɵtextInterpolate(opt_r9.name);
88
+ i0.ɵɵtextInterpolate(opt_r6.name);
118
89
  } }
119
- function ListsBrowseResource_Conditional_21_Conditional_10_For_21_Conditional_8_Template(rf, ctx) { if (rf & 1) {
120
- i0.ɵɵelementStart(0, "span", 69);
90
+ function ListsBrowseResource_Conditional_18_Conditional_10_For_21_Conditional_8_Template(rf, ctx) { if (rf & 1) {
91
+ i0.ɵɵelementStart(0, "span", 62);
121
92
  i0.ɵɵtext(1);
122
93
  i0.ɵɵelementEnd();
123
94
  } if (rf & 2) {
124
- const item_r11 = i0.ɵɵnextContext().$implicit;
95
+ const item_r8 = i0.ɵɵnextContext().$implicit;
125
96
  i0.ɵɵadvance();
126
- i0.ɵɵtextInterpolate(item_r11.list.Description);
97
+ i0.ɵɵtextInterpolate(item_r8.list.Description);
127
98
  } }
128
- function ListsBrowseResource_Conditional_21_Conditional_10_For_21_Conditional_15_Conditional_0_Template(rf, ctx) { if (rf & 1) {
129
- i0.ɵɵelementStart(0, "span", 81);
130
- i0.ɵɵelement(1, "i", 82);
131
- i0.ɵɵelementStart(2, "span", 83);
99
+ function ListsBrowseResource_Conditional_18_Conditional_10_For_21_Conditional_15_Conditional_0_Template(rf, ctx) { if (rf & 1) {
100
+ i0.ɵɵelementStart(0, "span", 74);
101
+ i0.ɵɵelement(1, "i", 75);
102
+ i0.ɵɵelementStart(2, "span", 76);
132
103
  i0.ɵɵtext(3);
133
104
  i0.ɵɵelementEnd()();
134
105
  } if (rf & 2) {
135
- const sharing_r12 = i0.ɵɵnextContext();
106
+ const sharing_r9 = i0.ɵɵnextContext();
136
107
  i0.ɵɵadvance(3);
137
- i0.ɵɵtextInterpolate(sharing_r12.totalShares);
108
+ i0.ɵɵtextInterpolate(sharing_r9.totalShares);
138
109
  } }
139
- function ListsBrowseResource_Conditional_21_Conditional_10_For_21_Conditional_15_Conditional_1_Template(rf, ctx) { if (rf & 1) {
140
- i0.ɵɵelementStart(0, "span", 74);
141
- i0.ɵɵelement(1, "i", 84);
110
+ function ListsBrowseResource_Conditional_18_Conditional_10_For_21_Conditional_15_Conditional_1_Template(rf, ctx) { if (rf & 1) {
111
+ i0.ɵɵelementStart(0, "span", 67);
112
+ i0.ɵɵelement(1, "i", 77);
142
113
  i0.ɵɵelementEnd();
143
114
  } }
144
- function ListsBrowseResource_Conditional_21_Conditional_10_For_21_Conditional_15_Template(rf, ctx) { if (rf & 1) {
145
- i0.ɵɵconditionalCreate(0, ListsBrowseResource_Conditional_21_Conditional_10_For_21_Conditional_15_Conditional_0_Template, 4, 1, "span", 81);
146
- i0.ɵɵconditionalCreate(1, ListsBrowseResource_Conditional_21_Conditional_10_For_21_Conditional_15_Conditional_1_Template, 2, 0, "span", 74);
115
+ function ListsBrowseResource_Conditional_18_Conditional_10_For_21_Conditional_15_Template(rf, ctx) { if (rf & 1) {
116
+ i0.ɵɵconditionalCreate(0, ListsBrowseResource_Conditional_18_Conditional_10_For_21_Conditional_15_Conditional_0_Template, 4, 1, "span", 74);
117
+ i0.ɵɵconditionalCreate(1, ListsBrowseResource_Conditional_18_Conditional_10_For_21_Conditional_15_Conditional_1_Template, 2, 0, "span", 67);
147
118
  } if (rf & 2) {
148
- const sharing_r12 = ctx;
149
- i0.ɵɵconditional(sharing_r12.totalShares > 0 ? 0 : -1);
119
+ const sharing_r9 = ctx;
120
+ i0.ɵɵconditional(sharing_r9.totalShares > 0 ? 0 : -1);
150
121
  i0.ɵɵadvance();
151
- i0.ɵɵconditional(sharing_r12.totalShares === 0 ? 1 : -1);
122
+ i0.ɵɵconditional(sharing_r9.totalShares === 0 ? 1 : -1);
152
123
  } }
153
- function ListsBrowseResource_Conditional_21_Conditional_10_For_21_Conditional_16_Template(rf, ctx) { if (rf & 1) {
154
- i0.ɵɵelementStart(0, "span", 74);
155
- i0.ɵɵelement(1, "i", 84);
124
+ function ListsBrowseResource_Conditional_18_Conditional_10_For_21_Conditional_16_Template(rf, ctx) { if (rf & 1) {
125
+ i0.ɵɵelementStart(0, "span", 67);
126
+ i0.ɵɵelement(1, "i", 77);
156
127
  i0.ɵɵelementEnd();
157
128
  } }
158
- function ListsBrowseResource_Conditional_21_Conditional_10_For_21_Template(rf, ctx) { if (rf & 1) {
159
- const _r10 = i0.ɵɵgetCurrentView();
160
- i0.ɵɵelementStart(0, "tr", 63);
161
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_21_Conditional_10_For_21_Template_tr_click_0_listener() { const item_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.openList(item_r11)); })("keydown.enter", function ListsBrowseResource_Conditional_21_Conditional_10_For_21_Template_tr_keydown_enter_0_listener() { const item_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.openList(item_r11)); });
162
- i0.ɵɵelementStart(1, "td", 64)(2, "div", 65)(3, "div", 66);
129
+ function ListsBrowseResource_Conditional_18_Conditional_10_For_21_Template(rf, ctx) { if (rf & 1) {
130
+ const _r7 = i0.ɵɵgetCurrentView();
131
+ i0.ɵɵelementStart(0, "tr", 56);
132
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_18_Conditional_10_For_21_Template_tr_click_0_listener() { const item_r8 = i0.ɵɵrestoreView(_r7).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openList(item_r8)); })("keydown.enter", function ListsBrowseResource_Conditional_18_Conditional_10_For_21_Template_tr_keydown_enter_0_listener() { const item_r8 = i0.ɵɵrestoreView(_r7).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openList(item_r8)); });
133
+ i0.ɵɵelementStart(1, "td", 57)(2, "div", 58)(3, "div", 59);
163
134
  i0.ɵɵelement(4, "i");
164
135
  i0.ɵɵelementEnd();
165
- i0.ɵɵelementStart(5, "div", 67)(6, "span", 68);
136
+ i0.ɵɵelementStart(5, "div", 60)(6, "span", 61);
166
137
  i0.ɵɵtext(7);
167
138
  i0.ɵɵelementEnd();
168
- i0.ɵɵconditionalCreate(8, ListsBrowseResource_Conditional_21_Conditional_10_For_21_Conditional_8_Template, 2, 1, "span", 69);
139
+ i0.ɵɵconditionalCreate(8, ListsBrowseResource_Conditional_18_Conditional_10_For_21_Conditional_8_Template, 2, 1, "span", 62);
169
140
  i0.ɵɵelementEnd()()();
170
- i0.ɵɵelementStart(9, "td", 70)(10, "span", 71);
141
+ i0.ɵɵelementStart(9, "td", 63)(10, "span", 64);
171
142
  i0.ɵɵtext(11);
172
143
  i0.ɵɵelementEnd()();
173
- i0.ɵɵelementStart(12, "td", 72);
144
+ i0.ɵɵelementStart(12, "td", 65);
174
145
  i0.ɵɵtext(13);
175
146
  i0.ɵɵelementEnd();
176
- i0.ɵɵelementStart(14, "td", 73);
177
- i0.ɵɵconditionalCreate(15, ListsBrowseResource_Conditional_21_Conditional_10_For_21_Conditional_15_Template, 2, 2);
178
- i0.ɵɵconditionalCreate(16, ListsBrowseResource_Conditional_21_Conditional_10_For_21_Conditional_16_Template, 2, 0, "span", 74);
147
+ i0.ɵɵelementStart(14, "td", 66);
148
+ i0.ɵɵconditionalCreate(15, ListsBrowseResource_Conditional_18_Conditional_10_For_21_Conditional_15_Template, 2, 2);
149
+ i0.ɵɵconditionalCreate(16, ListsBrowseResource_Conditional_18_Conditional_10_For_21_Conditional_16_Template, 2, 0, "span", 67);
179
150
  i0.ɵɵelementEnd();
180
- i0.ɵɵelementStart(17, "td", 75)(18, "span", 76);
151
+ i0.ɵɵelementStart(17, "td", 68)(18, "span", 69);
181
152
  i0.ɵɵtext(19);
182
153
  i0.ɵɵelementEnd()();
183
- i0.ɵɵelementStart(20, "td", 77);
154
+ i0.ɵɵelementStart(20, "td", 70);
184
155
  i0.ɵɵtext(21);
185
156
  i0.ɵɵelementEnd();
186
- i0.ɵɵelementStart(22, "td", 78)(23, "button", 79);
187
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_21_Conditional_10_For_21_Template_button_click_23_listener($event) { const item_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.openListMenu($event, item_r11)); });
188
- i0.ɵɵelement(24, "i", 80);
157
+ i0.ɵɵelementStart(22, "td", 71)(23, "button", 72);
158
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_18_Conditional_10_For_21_Template_button_click_23_listener($event) { const item_r8 = i0.ɵɵrestoreView(_r7).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openListMenu($event, item_r8)); });
159
+ i0.ɵɵelement(24, "i", 73);
189
160
  i0.ɵɵelementEnd()()();
190
161
  } if (rf & 2) {
191
162
  let tmp_19_0;
192
- const item_r11 = ctx.$implicit;
193
- const ctx_r4 = i0.ɵɵnextContext(3);
163
+ const item_r8 = ctx.$implicit;
164
+ const ctx_r2 = i0.ɵɵnextContext(3);
194
165
  i0.ɵɵadvance(3);
195
- i0.ɵɵstyleProp("background-color", ctx_r4.getEntityColor(item_r11.entityName));
166
+ i0.ɵɵstyleProp("background-color", ctx_r2.getEntityColor(item_r8.entityName));
196
167
  i0.ɵɵadvance();
197
- i0.ɵɵclassMap(ctx_r4.getEntityIcon(item_r11.entityName));
168
+ i0.ɵɵclassMap(ctx_r2.getEntityIcon(item_r8.entityName));
198
169
  i0.ɵɵadvance(3);
199
- i0.ɵɵtextInterpolate(item_r11.list.Name);
170
+ i0.ɵɵtextInterpolate(item_r8.list.Name);
200
171
  i0.ɵɵadvance();
201
- i0.ɵɵconditional(item_r11.list.Description ? 8 : -1);
172
+ i0.ɵɵconditional(item_r8.list.Description ? 8 : -1);
202
173
  i0.ɵɵadvance(3);
203
- i0.ɵɵtextInterpolate(item_r11.entityName);
174
+ i0.ɵɵtextInterpolate(item_r8.entityName);
204
175
  i0.ɵɵadvance(2);
205
- i0.ɵɵtextInterpolate(item_r11.itemCount);
176
+ i0.ɵɵtextInterpolate(item_r8.itemCount);
206
177
  i0.ɵɵadvance(2);
207
- i0.ɵɵconditional((tmp_19_0 = item_r11.sharingInfo) ? 15 : -1, tmp_19_0);
178
+ i0.ɵɵconditional((tmp_19_0 = item_r8.sharingInfo) ? 15 : -1, tmp_19_0);
208
179
  i0.ɵɵadvance();
209
- i0.ɵɵconditional(!item_r11.sharingInfo ? 16 : -1);
180
+ i0.ɵɵconditional(!item_r8.sharingInfo ? 16 : -1);
210
181
  i0.ɵɵadvance(2);
211
- i0.ɵɵclassProp("is-me", item_r11.isOwner);
182
+ i0.ɵɵclassProp("is-me", item_r8.isOwner);
212
183
  i0.ɵɵadvance();
213
- i0.ɵɵtextInterpolate1(" ", item_r11.isOwner ? "You" : item_r11.ownerName, " ");
184
+ i0.ɵɵtextInterpolate1(" ", item_r8.isOwner ? "You" : item_r8.ownerName, " ");
214
185
  i0.ɵɵadvance(2);
215
- i0.ɵɵtextInterpolate(ctx_r4.formatDate(item_r11.list.__mj_UpdatedAt));
186
+ i0.ɵɵtextInterpolate(ctx_r2.formatDate(item_r8.list.__mj_UpdatedAt));
216
187
  } }
217
- function ListsBrowseResource_Conditional_21_Conditional_10_Template(rf, ctx) { if (rf & 1) {
218
- i0.ɵɵelementStart(0, "div", 50)(1, "table", 53)(2, "thead")(3, "tr")(4, "th", 54);
188
+ function ListsBrowseResource_Conditional_18_Conditional_10_Template(rf, ctx) { if (rf & 1) {
189
+ i0.ɵɵelementStart(0, "div", 43)(1, "table", 46)(2, "thead")(3, "tr")(4, "th", 47);
219
190
  i0.ɵɵtext(5, "Name");
220
191
  i0.ɵɵelementEnd();
221
- i0.ɵɵelementStart(6, "th", 55);
192
+ i0.ɵɵelementStart(6, "th", 48);
222
193
  i0.ɵɵtext(7, "Entity");
223
194
  i0.ɵɵelementEnd();
224
- i0.ɵɵelementStart(8, "th", 56);
195
+ i0.ɵɵelementStart(8, "th", 49);
225
196
  i0.ɵɵtext(9, "Items");
226
197
  i0.ɵɵelementEnd();
227
- i0.ɵɵelementStart(10, "th", 57);
198
+ i0.ɵɵelementStart(10, "th", 50);
228
199
  i0.ɵɵtext(11, "Shared");
229
200
  i0.ɵɵelementEnd();
230
- i0.ɵɵelementStart(12, "th", 58);
201
+ i0.ɵɵelementStart(12, "th", 51);
231
202
  i0.ɵɵtext(13, "Owner");
232
203
  i0.ɵɵelementEnd();
233
- i0.ɵɵelementStart(14, "th", 59);
204
+ i0.ɵɵelementStart(14, "th", 52);
234
205
  i0.ɵɵtext(15, "Updated");
235
206
  i0.ɵɵelementEnd();
236
- i0.ɵɵelementStart(16, "th", 60)(17, "span", 61);
207
+ i0.ɵɵelementStart(16, "th", 53)(17, "span", 54);
237
208
  i0.ɵɵtext(18, "Actions");
238
209
  i0.ɵɵelementEnd()()()();
239
210
  i0.ɵɵelementStart(19, "tbody");
240
- i0.ɵɵrepeaterCreate(20, ListsBrowseResource_Conditional_21_Conditional_10_For_21_Template, 25, 14, "tr", 62, i0.ɵɵrepeaterTrackByIdentity);
211
+ i0.ɵɵrepeaterCreate(20, ListsBrowseResource_Conditional_18_Conditional_10_For_21_Template, 25, 14, "tr", 55, i0.ɵɵrepeaterTrackByIdentity);
241
212
  i0.ɵɵelementEnd()()();
242
213
  } if (rf & 2) {
243
- const ctx_r4 = i0.ɵɵnextContext(2);
214
+ const ctx_r2 = i0.ɵɵnextContext(2);
244
215
  i0.ɵɵadvance(20);
245
- i0.ɵɵrepeater(ctx_r4.filteredLists);
216
+ i0.ɵɵrepeater(ctx_r2.filteredLists);
246
217
  } }
247
- function ListsBrowseResource_Conditional_21_Conditional_11_For_2_Conditional_12_Template(rf, ctx) { if (rf & 1) {
248
- i0.ɵɵelementStart(0, "p", 94);
218
+ function ListsBrowseResource_Conditional_18_Conditional_11_For_2_Conditional_12_Template(rf, ctx) { if (rf & 1) {
219
+ i0.ɵɵelementStart(0, "p", 87);
249
220
  i0.ɵɵtext(1);
250
221
  i0.ɵɵelementEnd();
251
222
  } if (rf & 2) {
252
- const item_r14 = i0.ɵɵnextContext().$implicit;
223
+ const item_r11 = i0.ɵɵnextContext().$implicit;
253
224
  i0.ɵɵadvance();
254
- i0.ɵɵtextInterpolate(item_r14.list.Description);
225
+ i0.ɵɵtextInterpolate(item_r11.list.Description);
255
226
  } }
256
- function ListsBrowseResource_Conditional_21_Conditional_11_For_2_Conditional_27_Conditional_0_Template(rf, ctx) { if (rf & 1) {
257
- i0.ɵɵelementStart(0, "span", 106);
258
- i0.ɵɵelement(1, "i", 82);
227
+ function ListsBrowseResource_Conditional_18_Conditional_11_For_2_Conditional_27_Conditional_0_Template(rf, ctx) { if (rf & 1) {
228
+ i0.ɵɵelementStart(0, "span", 99);
229
+ i0.ɵɵelement(1, "i", 75);
259
230
  i0.ɵɵelementEnd();
260
231
  } if (rf & 2) {
261
- const sharing_r15 = i0.ɵɵnextContext();
262
- i0.ɵɵproperty("title", "Shared with " + sharing_r15.totalShares + " user(s)/role(s)");
232
+ const sharing_r12 = i0.ɵɵnextContext();
233
+ i0.ɵɵproperty("title", "Shared with " + sharing_r12.totalShares + " user(s)/role(s)");
263
234
  } }
264
- function ListsBrowseResource_Conditional_21_Conditional_11_For_2_Conditional_27_Template(rf, ctx) { if (rf & 1) {
265
- i0.ɵɵconditionalCreate(0, ListsBrowseResource_Conditional_21_Conditional_11_For_2_Conditional_27_Conditional_0_Template, 2, 1, "span", 106);
235
+ function ListsBrowseResource_Conditional_18_Conditional_11_For_2_Conditional_27_Template(rf, ctx) { if (rf & 1) {
236
+ i0.ɵɵconditionalCreate(0, ListsBrowseResource_Conditional_18_Conditional_11_For_2_Conditional_27_Conditional_0_Template, 2, 1, "span", 99);
266
237
  } if (rf & 2) {
267
238
  i0.ɵɵconditional(ctx.totalShares > 0 ? 0 : -1);
268
239
  } }
269
- function ListsBrowseResource_Conditional_21_Conditional_11_For_2_Template(rf, ctx) { if (rf & 1) {
270
- const _r13 = i0.ɵɵgetCurrentView();
271
- i0.ɵɵelementStart(0, "div", 86);
272
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_21_Conditional_11_For_2_Template_div_click_0_listener() { const item_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.openList(item_r14)); })("keydown.enter", function ListsBrowseResource_Conditional_21_Conditional_11_For_2_Template_div_keydown_enter_0_listener() { const item_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.openList(item_r14)); });
273
- i0.ɵɵelementStart(1, "div", 87)(2, "div", 88);
240
+ function ListsBrowseResource_Conditional_18_Conditional_11_For_2_Template(rf, ctx) { if (rf & 1) {
241
+ const _r10 = i0.ɵɵgetCurrentView();
242
+ i0.ɵɵelementStart(0, "div", 79);
243
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_18_Conditional_11_For_2_Template_div_click_0_listener() { const item_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openList(item_r11)); })("keydown.enter", function ListsBrowseResource_Conditional_18_Conditional_11_For_2_Template_div_keydown_enter_0_listener() { const item_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openList(item_r11)); });
244
+ i0.ɵɵelementStart(1, "div", 80)(2, "div", 81);
274
245
  i0.ɵɵelement(3, "i");
275
246
  i0.ɵɵelementEnd();
276
- i0.ɵɵelementStart(4, "button", 89);
277
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_21_Conditional_11_For_2_Template_button_click_4_listener($event) { const item_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.toggleFavorite($event, item_r14)); });
247
+ i0.ɵɵelementStart(4, "button", 82);
248
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_18_Conditional_11_For_2_Template_button_click_4_listener($event) { const item_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.toggleFavorite($event, item_r11)); });
278
249
  i0.ɵɵelement(5, "i");
279
250
  i0.ɵɵelementEnd();
280
- i0.ɵɵelementStart(6, "div", 90)(7, "button", 91);
281
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_21_Conditional_11_For_2_Template_button_click_7_listener($event) { const item_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.openListMenu($event, item_r14)); });
282
- i0.ɵɵelement(8, "i", 80);
251
+ i0.ɵɵelementStart(6, "div", 83)(7, "button", 84);
252
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_18_Conditional_11_For_2_Template_button_click_7_listener($event) { const item_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openListMenu($event, item_r11)); });
253
+ i0.ɵɵelement(8, "i", 73);
283
254
  i0.ɵɵelementEnd()()();
284
- i0.ɵɵelementStart(9, "div", 92)(10, "h3", 93);
255
+ i0.ɵɵelementStart(9, "div", 85)(10, "h3", 86);
285
256
  i0.ɵɵtext(11);
286
257
  i0.ɵɵelementEnd();
287
- i0.ɵɵconditionalCreate(12, ListsBrowseResource_Conditional_21_Conditional_11_For_2_Conditional_12_Template, 2, 1, "p", 94);
288
- i0.ɵɵelementStart(13, "div", 95)(14, "span", 96);
289
- i0.ɵɵelement(15, "i", 97);
258
+ i0.ɵɵconditionalCreate(12, ListsBrowseResource_Conditional_18_Conditional_11_For_2_Conditional_12_Template, 2, 1, "p", 87);
259
+ i0.ɵɵelementStart(13, "div", 88)(14, "span", 89);
260
+ i0.ɵɵelement(15, "i", 90);
290
261
  i0.ɵɵtext(16);
291
262
  i0.ɵɵelementEnd();
292
- i0.ɵɵelementStart(17, "span", 96);
293
- i0.ɵɵelement(18, "i", 98);
263
+ i0.ɵɵelementStart(17, "span", 89);
264
+ i0.ɵɵelement(18, "i", 91);
294
265
  i0.ɵɵtext(19);
295
266
  i0.ɵɵelementEnd()();
296
- i0.ɵɵelementStart(20, "div", 99);
297
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_21_Conditional_11_For_2_Template_div_click_20_listener($event) { i0.ɵɵrestoreView(_r13); return i0.ɵɵresetView($event.stopPropagation()); });
298
- i0.ɵɵelementStart(21, "mj-tag-chips", 100);
299
- i0.ɵɵlistener("TagClicked", function ListsBrowseResource_Conditional_21_Conditional_11_For_2_Template_mj_tag_chips_TagClicked_21_listener($event) { i0.ɵɵrestoreView(_r13); const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.onCardTagClicked($event)); });
267
+ i0.ɵɵelementStart(20, "div", 92);
268
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_18_Conditional_11_For_2_Template_div_click_20_listener($event) { i0.ɵɵrestoreView(_r10); return i0.ɵɵresetView($event.stopPropagation()); });
269
+ i0.ɵɵelementStart(21, "mj-tag-chips", 93);
270
+ i0.ɵɵlistener("TagClicked", function ListsBrowseResource_Conditional_18_Conditional_11_For_2_Template_mj_tag_chips_TagClicked_21_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.onCardTagClicked($event)); });
300
271
  i0.ɵɵelementEnd()()();
301
- i0.ɵɵelementStart(22, "div", 101)(23, "span", 102);
302
- i0.ɵɵelement(24, "i", 103);
272
+ i0.ɵɵelementStart(22, "div", 94)(23, "span", 95);
273
+ i0.ɵɵelement(24, "i", 96);
303
274
  i0.ɵɵtext(25);
304
275
  i0.ɵɵelementEnd();
305
- i0.ɵɵelementStart(26, "div", 104);
306
- i0.ɵɵconditionalCreate(27, ListsBrowseResource_Conditional_21_Conditional_11_For_2_Conditional_27_Template, 1, 1);
307
- i0.ɵɵelementStart(28, "span", 105);
276
+ i0.ɵɵelementStart(26, "div", 97);
277
+ i0.ɵɵconditionalCreate(27, ListsBrowseResource_Conditional_18_Conditional_11_For_2_Conditional_27_Template, 1, 1);
278
+ i0.ɵɵelementStart(28, "span", 98);
308
279
  i0.ɵɵtext(29);
309
280
  i0.ɵɵelementEnd()()()();
310
281
  } if (rf & 2) {
311
282
  let tmp_28_0;
312
- const item_r14 = ctx.$implicit;
313
- const ctx_r4 = i0.ɵɵnextContext(3);
283
+ const item_r11 = ctx.$implicit;
284
+ const ctx_r2 = i0.ɵɵnextContext(3);
314
285
  i0.ɵɵadvance(2);
315
- i0.ɵɵstyleProp("background-color", ctx_r4.getEntityColor(item_r14.entityName));
286
+ i0.ɵɵstyleProp("background-color", ctx_r2.getEntityColor(item_r11.entityName));
316
287
  i0.ɵɵadvance();
317
- i0.ɵɵclassMap(ctx_r4.getEntityIcon(item_r14.entityName));
288
+ i0.ɵɵclassMap(ctx_r2.getEntityIcon(item_r11.entityName));
318
289
  i0.ɵɵadvance();
319
- i0.ɵɵclassProp("favorite-btn--active", ctx_r4.isFavorite(item_r14.list.ID));
320
- i0.ɵɵproperty("title", ctx_r4.isFavorite(item_r14.list.ID) ? "Remove from favorites" : "Add to favorites");
290
+ i0.ɵɵclassProp("favorite-btn--active", ctx_r2.isFavorite(item_r11.list.ID));
291
+ i0.ɵɵproperty("title", ctx_r2.isFavorite(item_r11.list.ID) ? "Remove from favorites" : "Add to favorites");
321
292
  i0.ɵɵadvance();
322
- i0.ɵɵclassMap(ctx_r4.isFavorite(item_r14.list.ID) ? "fa-solid fa-star" : "fa-regular fa-star");
293
+ i0.ɵɵclassMap(ctx_r2.isFavorite(item_r11.list.ID) ? "fa-solid fa-star" : "fa-regular fa-star");
323
294
  i0.ɵɵadvance(6);
324
- i0.ɵɵtextInterpolate(item_r14.list.Name);
295
+ i0.ɵɵtextInterpolate(item_r11.list.Name);
325
296
  i0.ɵɵadvance();
326
- i0.ɵɵconditional(item_r14.list.Description ? 12 : -1);
297
+ i0.ɵɵconditional(item_r11.list.Description ? 12 : -1);
327
298
  i0.ɵɵadvance(4);
328
- i0.ɵɵtextInterpolate1(" ", item_r14.entityName, " ");
299
+ i0.ɵɵtextInterpolate1(" ", item_r11.entityName, " ");
329
300
  i0.ɵɵadvance(3);
330
- i0.ɵɵtextInterpolate2(" ", item_r14.itemCount, " item", item_r14.itemCount !== 1 ? "s" : "", " ");
301
+ i0.ɵɵtextInterpolate2(" ", item_r11.itemCount, " item", item_r11.itemCount !== 1 ? "s" : "", " ");
331
302
  i0.ɵɵadvance(2);
332
- i0.ɵɵproperty("Provider", ctx_r4.Provider)("RecordID", item_r14.list.ID)("Editable", false)("MaxDisplay", 3);
303
+ i0.ɵɵproperty("Provider", ctx_r2.Provider)("RecordID", item_r11.list.ID)("Editable", false)("MaxDisplay", 3);
333
304
  i0.ɵɵadvance(2);
334
- i0.ɵɵclassProp("is-me", item_r14.isOwner);
305
+ i0.ɵɵclassProp("is-me", item_r11.isOwner);
335
306
  i0.ɵɵadvance(2);
336
- i0.ɵɵtextInterpolate1(" ", item_r14.isOwner ? "You" : item_r14.ownerName, " ");
307
+ i0.ɵɵtextInterpolate1(" ", item_r11.isOwner ? "You" : item_r11.ownerName, " ");
337
308
  i0.ɵɵadvance(2);
338
- i0.ɵɵconditional((tmp_28_0 = item_r14.sharingInfo) ? 27 : -1, tmp_28_0);
309
+ i0.ɵɵconditional((tmp_28_0 = item_r11.sharingInfo) ? 27 : -1, tmp_28_0);
339
310
  i0.ɵɵadvance(2);
340
- i0.ɵɵtextInterpolate(ctx_r4.formatDate(item_r14.list.__mj_UpdatedAt));
311
+ i0.ɵɵtextInterpolate(ctx_r2.formatDate(item_r11.list.__mj_UpdatedAt));
341
312
  } }
342
- function ListsBrowseResource_Conditional_21_Conditional_11_Template(rf, ctx) { if (rf & 1) {
343
- i0.ɵɵelementStart(0, "div", 51);
344
- i0.ɵɵrepeaterCreate(1, ListsBrowseResource_Conditional_21_Conditional_11_For_2_Template, 30, 23, "div", 85, i0.ɵɵrepeaterTrackByIdentity);
313
+ function ListsBrowseResource_Conditional_18_Conditional_11_Template(rf, ctx) { if (rf & 1) {
314
+ i0.ɵɵelementStart(0, "div", 44);
315
+ i0.ɵɵrepeaterCreate(1, ListsBrowseResource_Conditional_18_Conditional_11_For_2_Template, 30, 23, "div", 78, i0.ɵɵrepeaterTrackByIdentity);
345
316
  i0.ɵɵelementEnd();
346
317
  } if (rf & 2) {
347
- const ctx_r4 = i0.ɵɵnextContext(2);
318
+ const ctx_r2 = i0.ɵɵnextContext(2);
348
319
  i0.ɵɵadvance();
349
- i0.ɵɵrepeater(ctx_r4.filteredLists);
320
+ i0.ɵɵrepeater(ctx_r2.filteredLists);
350
321
  } }
351
- function ListsBrowseResource_Conditional_21_Conditional_12_For_2_ng_container_0_Template(rf, ctx) { if (rf & 1) {
322
+ function ListsBrowseResource_Conditional_18_Conditional_12_For_2_ng_container_0_Template(rf, ctx) { if (rf & 1) {
352
323
  i0.ɵɵelementContainer(0);
353
324
  } }
354
- function ListsBrowseResource_Conditional_21_Conditional_12_For_2_Template(rf, ctx) { if (rf & 1) {
355
- i0.ɵɵtemplate(0, ListsBrowseResource_Conditional_21_Conditional_12_For_2_ng_container_0_Template, 1, 0, "ng-container", 107);
325
+ function ListsBrowseResource_Conditional_18_Conditional_12_For_2_Template(rf, ctx) { if (rf & 1) {
326
+ i0.ɵɵtemplate(0, ListsBrowseResource_Conditional_18_Conditional_12_For_2_ng_container_0_Template, 1, 0, "ng-container", 100);
356
327
  } if (rf & 2) {
357
- const node_r16 = ctx.$implicit;
328
+ const node_r13 = ctx.$implicit;
358
329
  i0.ɵɵnextContext(3);
359
- const categoryNodeTemplate_r17 = i0.ɵɵreference(23);
360
- i0.ɵɵproperty("ngTemplateOutlet", categoryNodeTemplate_r17)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c0, node_r16));
330
+ const categoryNodeTemplate_r14 = i0.ɵɵreference(20);
331
+ i0.ɵɵproperty("ngTemplateOutlet", categoryNodeTemplate_r14)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c0, node_r13));
361
332
  } }
362
- function ListsBrowseResource_Conditional_21_Conditional_12_Template(rf, ctx) { if (rf & 1) {
363
- i0.ɵɵelementStart(0, "div", 52);
364
- i0.ɵɵrepeaterCreate(1, ListsBrowseResource_Conditional_21_Conditional_12_For_2_Template, 1, 4, "ng-container", null, i0.ɵɵrepeaterTrackByIdentity);
333
+ function ListsBrowseResource_Conditional_18_Conditional_12_Template(rf, ctx) { if (rf & 1) {
334
+ i0.ɵɵelementStart(0, "div", 45);
335
+ i0.ɵɵrepeaterCreate(1, ListsBrowseResource_Conditional_18_Conditional_12_For_2_Template, 1, 4, "ng-container", null, i0.ɵɵrepeaterTrackByIdentity);
365
336
  i0.ɵɵelementEnd();
366
337
  } if (rf & 2) {
367
- const ctx_r4 = i0.ɵɵnextContext(2);
338
+ const ctx_r2 = i0.ɵɵnextContext(2);
368
339
  i0.ɵɵadvance();
369
- i0.ɵɵrepeater(ctx_r4.categoryTree);
340
+ i0.ɵɵrepeater(ctx_r2.categoryTree);
370
341
  } }
371
- function ListsBrowseResource_Conditional_21_Template(rf, ctx) { if (rf & 1) {
372
- const _r8 = i0.ɵɵgetCurrentView();
373
- i0.ɵɵelementStart(0, "div", 18)(1, "div", 45)(2, "span", 46);
342
+ function ListsBrowseResource_Conditional_18_Template(rf, ctx) { if (rf & 1) {
343
+ const _r5 = i0.ɵɵgetCurrentView();
344
+ i0.ɵɵelementStart(0, "div", 17)(1, "div", 38)(2, "span", 39);
374
345
  i0.ɵɵtext(3);
375
346
  i0.ɵɵelementEnd();
376
- i0.ɵɵelementStart(4, "div", 47)(5, "label");
347
+ i0.ɵɵelementStart(4, "div", 40)(5, "label");
377
348
  i0.ɵɵtext(6, "Sort:");
378
349
  i0.ɵɵelementEnd();
379
- i0.ɵɵelementStart(7, "select", 48);
380
- i0.ɵɵtwoWayListener("ngModelChange", function ListsBrowseResource_Conditional_21_Template_select_ngModelChange_7_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r4 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r4.selectedSort, $event) || (ctx_r4.selectedSort = $event); return i0.ɵɵresetView($event); });
381
- i0.ɵɵlistener("ngModelChange", function ListsBrowseResource_Conditional_21_Template_select_ngModelChange_7_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.onSortChange($event)); });
382
- i0.ɵɵrepeaterCreate(8, ListsBrowseResource_Conditional_21_For_9_Template, 2, 2, "option", 49, i0.ɵɵrepeaterTrackByIdentity);
350
+ i0.ɵɵelementStart(7, "select", 41);
351
+ i0.ɵɵtwoWayListener("ngModelChange", function ListsBrowseResource_Conditional_18_Template_select_ngModelChange_7_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r2.selectedSort, $event) || (ctx_r2.selectedSort = $event); return i0.ɵɵresetView($event); });
352
+ i0.ɵɵlistener("ngModelChange", function ListsBrowseResource_Conditional_18_Template_select_ngModelChange_7_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onSortChange($event)); });
353
+ i0.ɵɵrepeaterCreate(8, ListsBrowseResource_Conditional_18_For_9_Template, 2, 2, "option", 42, i0.ɵɵrepeaterTrackByIdentity);
383
354
  i0.ɵɵelementEnd()()();
384
- i0.ɵɵconditionalCreate(10, ListsBrowseResource_Conditional_21_Conditional_10_Template, 22, 0, "div", 50);
385
- i0.ɵɵconditionalCreate(11, ListsBrowseResource_Conditional_21_Conditional_11_Template, 3, 0, "div", 51);
386
- i0.ɵɵconditionalCreate(12, ListsBrowseResource_Conditional_21_Conditional_12_Template, 3, 0, "div", 52);
355
+ i0.ɵɵconditionalCreate(10, ListsBrowseResource_Conditional_18_Conditional_10_Template, 22, 0, "div", 43);
356
+ i0.ɵɵconditionalCreate(11, ListsBrowseResource_Conditional_18_Conditional_11_Template, 3, 0, "div", 44);
357
+ i0.ɵɵconditionalCreate(12, ListsBrowseResource_Conditional_18_Conditional_12_Template, 3, 0, "div", 45);
387
358
  i0.ɵɵelementEnd();
388
359
  } if (rf & 2) {
389
- const ctx_r4 = i0.ɵɵnextContext();
360
+ const ctx_r2 = i0.ɵɵnextContext();
390
361
  i0.ɵɵadvance(3);
391
- i0.ɵɵtextInterpolate2("", ctx_r4.filteredLists.length, " list", ctx_r4.filteredLists.length !== 1 ? "s" : "");
362
+ i0.ɵɵtextInterpolate2("", ctx_r2.filteredLists.length, " list", ctx_r2.filteredLists.length !== 1 ? "s" : "");
392
363
  i0.ɵɵadvance(4);
393
- i0.ɵɵtwoWayProperty("ngModel", ctx_r4.selectedSort);
364
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r2.selectedSort);
394
365
  i0.ɵɵadvance();
395
- i0.ɵɵrepeater(ctx_r4.sortOptions);
366
+ i0.ɵɵrepeater(ctx_r2.sortOptions);
396
367
  i0.ɵɵadvance(2);
397
- i0.ɵɵconditional(ctx_r4.viewMode === "table" ? 10 : -1);
368
+ i0.ɵɵconditional(ctx_r2.viewMode === "table" ? 10 : -1);
398
369
  i0.ɵɵadvance();
399
- i0.ɵɵconditional(ctx_r4.viewMode === "card" ? 11 : -1);
370
+ i0.ɵɵconditional(ctx_r2.viewMode === "card" ? 11 : -1);
400
371
  i0.ɵɵadvance();
401
- i0.ɵɵconditional(ctx_r4.viewMode === "hierarchy" ? 12 : -1);
372
+ i0.ɵɵconditional(ctx_r2.viewMode === "hierarchy" ? 12 : -1);
402
373
  } }
403
- function ListsBrowseResource_ng_template_22_Conditional_1_Template(rf, ctx) { if (rf & 1) {
404
- const _r18 = i0.ɵɵgetCurrentView();
405
- i0.ɵɵelementStart(0, "div", 112);
406
- i0.ɵɵlistener("click", function ListsBrowseResource_ng_template_22_Conditional_1_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r18); const node_r19 = i0.ɵɵnextContext().node; const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.toggleCategory(node_r19)); });
407
- i0.ɵɵelement(1, "i")(2, "i", 113);
408
- i0.ɵɵelementStart(3, "span", 114);
374
+ function ListsBrowseResource_ng_template_19_Conditional_1_Template(rf, ctx) { if (rf & 1) {
375
+ const _r15 = i0.ɵɵgetCurrentView();
376
+ i0.ɵɵelementStart(0, "div", 105);
377
+ i0.ɵɵlistener("click", function ListsBrowseResource_ng_template_19_Conditional_1_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r15); const node_r16 = i0.ɵɵnextContext().node; const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.toggleCategory(node_r16)); });
378
+ i0.ɵɵelement(1, "i")(2, "i", 106);
379
+ i0.ɵɵelementStart(3, "span", 107);
409
380
  i0.ɵɵtext(4);
410
381
  i0.ɵɵelementEnd();
411
- i0.ɵɵelementStart(5, "span", 115);
382
+ i0.ɵɵelementStart(5, "span", 108);
412
383
  i0.ɵɵtext(6);
413
384
  i0.ɵɵelementEnd()();
414
385
  } if (rf & 2) {
415
- const node_r19 = i0.ɵɵnextContext().node;
416
- const ctx_r4 = i0.ɵɵnextContext();
386
+ const node_r16 = i0.ɵɵnextContext().node;
387
+ const ctx_r2 = i0.ɵɵnextContext();
417
388
  i0.ɵɵadvance();
418
- i0.ɵɵclassMap(node_r19.isExpanded ? "fa-solid fa-chevron-down" : "fa-solid fa-chevron-right");
389
+ i0.ɵɵclassMap(node_r16.isExpanded ? "fa-solid fa-chevron-down" : "fa-solid fa-chevron-right");
419
390
  i0.ɵɵadvance();
420
- i0.ɵɵclassProp("fa-folder-open", node_r19.isExpanded);
391
+ i0.ɵɵclassProp("fa-folder-open", node_r16.isExpanded);
421
392
  i0.ɵɵadvance(2);
422
- i0.ɵɵtextInterpolate(node_r19.category.Name);
393
+ i0.ɵɵtextInterpolate(node_r16.category.Name);
423
394
  i0.ɵɵadvance(2);
424
- i0.ɵɵtextInterpolate(ctx_r4.getListCountInCategory(node_r19));
395
+ i0.ɵɵtextInterpolate(ctx_r2.getListCountInCategory(node_r16));
425
396
  } }
426
- function ListsBrowseResource_ng_template_22_Conditional_2_Template(rf, ctx) { if (rf & 1) {
427
- const _r20 = i0.ɵɵgetCurrentView();
428
- i0.ɵɵelementStart(0, "div", 116);
429
- i0.ɵɵlistener("click", function ListsBrowseResource_ng_template_22_Conditional_2_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r20); const node_r19 = i0.ɵɵnextContext().node; const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.toggleCategory(node_r19)); });
430
- i0.ɵɵelement(1, "i")(2, "i", 117);
431
- i0.ɵɵelementStart(3, "span", 114);
397
+ function ListsBrowseResource_ng_template_19_Conditional_2_Template(rf, ctx) { if (rf & 1) {
398
+ const _r17 = i0.ɵɵgetCurrentView();
399
+ i0.ɵɵelementStart(0, "div", 109);
400
+ i0.ɵɵlistener("click", function ListsBrowseResource_ng_template_19_Conditional_2_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r17); const node_r16 = i0.ɵɵnextContext().node; const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.toggleCategory(node_r16)); });
401
+ i0.ɵɵelement(1, "i")(2, "i", 110);
402
+ i0.ɵɵelementStart(3, "span", 107);
432
403
  i0.ɵɵtext(4, "Uncategorized");
433
404
  i0.ɵɵelementEnd();
434
- i0.ɵɵelementStart(5, "span", 115);
405
+ i0.ɵɵelementStart(5, "span", 108);
435
406
  i0.ɵɵtext(6);
436
407
  i0.ɵɵelementEnd()();
437
408
  } if (rf & 2) {
438
- const node_r19 = i0.ɵɵnextContext().node;
409
+ const node_r16 = i0.ɵɵnextContext().node;
439
410
  i0.ɵɵadvance();
440
- i0.ɵɵclassMap(node_r19.isExpanded ? "fa-solid fa-chevron-down" : "fa-solid fa-chevron-right");
411
+ i0.ɵɵclassMap(node_r16.isExpanded ? "fa-solid fa-chevron-down" : "fa-solid fa-chevron-right");
441
412
  i0.ɵɵadvance(5);
442
- i0.ɵɵtextInterpolate(node_r19.lists.length);
413
+ i0.ɵɵtextInterpolate(node_r16.lists.length);
443
414
  } }
444
- function ListsBrowseResource_ng_template_22_Conditional_3_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
415
+ function ListsBrowseResource_ng_template_19_Conditional_3_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
445
416
  i0.ɵɵelementStart(0, "span");
446
417
  i0.ɵɵtext(1);
447
418
  i0.ɵɵelementEnd();
448
419
  } if (rf & 2) {
449
- const item_r22 = i0.ɵɵnextContext().$implicit;
420
+ const item_r19 = i0.ɵɵnextContext().$implicit;
450
421
  i0.ɵɵadvance();
451
- i0.ɵɵtextInterpolate1(" \u00B7 ", item_r22.ownerName);
422
+ i0.ɵɵtextInterpolate1(" \u00B7 ", item_r19.ownerName);
452
423
  } }
453
- function ListsBrowseResource_ng_template_22_Conditional_3_For_2_Template(rf, ctx) { if (rf & 1) {
454
- const _r21 = i0.ɵɵgetCurrentView();
455
- i0.ɵɵelementStart(0, "div", 119);
456
- i0.ɵɵlistener("click", function ListsBrowseResource_ng_template_22_Conditional_3_For_2_Template_div_click_0_listener() { const item_r22 = i0.ɵɵrestoreView(_r21).$implicit; const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.openList(item_r22)); })("keydown.enter", function ListsBrowseResource_ng_template_22_Conditional_3_For_2_Template_div_keydown_enter_0_listener() { const item_r22 = i0.ɵɵrestoreView(_r21).$implicit; const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.openList(item_r22)); });
457
- i0.ɵɵelementStart(1, "div", 66);
424
+ function ListsBrowseResource_ng_template_19_Conditional_3_For_2_Template(rf, ctx) { if (rf & 1) {
425
+ const _r18 = i0.ɵɵgetCurrentView();
426
+ i0.ɵɵelementStart(0, "div", 112);
427
+ i0.ɵɵlistener("click", function ListsBrowseResource_ng_template_19_Conditional_3_For_2_Template_div_click_0_listener() { const item_r19 = i0.ɵɵrestoreView(_r18).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openList(item_r19)); })("keydown.enter", function ListsBrowseResource_ng_template_19_Conditional_3_For_2_Template_div_keydown_enter_0_listener() { const item_r19 = i0.ɵɵrestoreView(_r18).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openList(item_r19)); });
428
+ i0.ɵɵelementStart(1, "div", 59);
458
429
  i0.ɵɵelement(2, "i");
459
430
  i0.ɵɵelementEnd();
460
- i0.ɵɵelementStart(3, "div", 120)(4, "span", 68);
431
+ i0.ɵɵelementStart(3, "div", 113)(4, "span", 61);
461
432
  i0.ɵɵtext(5);
462
433
  i0.ɵɵelementEnd();
463
- i0.ɵɵelementStart(6, "span", 121);
434
+ i0.ɵɵelementStart(6, "span", 114);
464
435
  i0.ɵɵtext(7);
465
- i0.ɵɵconditionalCreate(8, ListsBrowseResource_ng_template_22_Conditional_3_For_2_Conditional_8_Template, 2, 1, "span");
436
+ i0.ɵɵconditionalCreate(8, ListsBrowseResource_ng_template_19_Conditional_3_For_2_Conditional_8_Template, 2, 1, "span");
466
437
  i0.ɵɵelementEnd()();
467
- i0.ɵɵelementStart(9, "div", 122)(10, "button", 123);
468
- i0.ɵɵlistener("click", function ListsBrowseResource_ng_template_22_Conditional_3_For_2_Template_button_click_10_listener($event) { const item_r22 = i0.ɵɵrestoreView(_r21).$implicit; const ctx_r4 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r4.openListMenu($event, item_r22)); });
469
- i0.ɵɵelement(11, "i", 80);
438
+ i0.ɵɵelementStart(9, "div", 115)(10, "button", 116);
439
+ i0.ɵɵlistener("click", function ListsBrowseResource_ng_template_19_Conditional_3_For_2_Template_button_click_10_listener($event) { const item_r19 = i0.ɵɵrestoreView(_r18).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openListMenu($event, item_r19)); });
440
+ i0.ɵɵelement(11, "i", 73);
470
441
  i0.ɵɵelementEnd()()();
471
442
  } if (rf & 2) {
472
- const item_r22 = ctx.$implicit;
473
- const ctx_r4 = i0.ɵɵnextContext(3);
443
+ const item_r19 = ctx.$implicit;
444
+ const ctx_r2 = i0.ɵɵnextContext(3);
474
445
  i0.ɵɵadvance();
475
- i0.ɵɵstyleProp("background-color", ctx_r4.getEntityColor(item_r22.entityName));
446
+ i0.ɵɵstyleProp("background-color", ctx_r2.getEntityColor(item_r19.entityName));
476
447
  i0.ɵɵadvance();
477
- i0.ɵɵclassMap(ctx_r4.getEntityIcon(item_r22.entityName));
448
+ i0.ɵɵclassMap(ctx_r2.getEntityIcon(item_r19.entityName));
478
449
  i0.ɵɵadvance(3);
479
- i0.ɵɵtextInterpolate(item_r22.list.Name);
450
+ i0.ɵɵtextInterpolate(item_r19.list.Name);
480
451
  i0.ɵɵadvance(2);
481
- i0.ɵɵtextInterpolate2(" ", item_r22.entityName, " \u00B7 ", item_r22.itemCount, " items ");
452
+ i0.ɵɵtextInterpolate2(" ", item_r19.entityName, " \u00B7 ", item_r19.itemCount, " items ");
482
453
  i0.ɵɵadvance();
483
- i0.ɵɵconditional(!item_r22.isOwner ? 8 : -1);
454
+ i0.ɵɵconditional(!item_r19.isOwner ? 8 : -1);
484
455
  } }
485
- function ListsBrowseResource_ng_template_22_Conditional_3_Template(rf, ctx) { if (rf & 1) {
486
- i0.ɵɵelementStart(0, "div", 111);
487
- i0.ɵɵrepeaterCreate(1, ListsBrowseResource_ng_template_22_Conditional_3_For_2_Template, 12, 8, "div", 118, i0.ɵɵrepeaterTrackByIdentity);
456
+ function ListsBrowseResource_ng_template_19_Conditional_3_Template(rf, ctx) { if (rf & 1) {
457
+ i0.ɵɵelementStart(0, "div", 104);
458
+ i0.ɵɵrepeaterCreate(1, ListsBrowseResource_ng_template_19_Conditional_3_For_2_Template, 12, 8, "div", 111, i0.ɵɵrepeaterTrackByIdentity);
488
459
  i0.ɵɵelementEnd();
489
460
  } if (rf & 2) {
490
- const node_r19 = i0.ɵɵnextContext().node;
461
+ const node_r16 = i0.ɵɵnextContext().node;
491
462
  i0.ɵɵadvance();
492
- i0.ɵɵrepeater(node_r19.lists);
463
+ i0.ɵɵrepeater(node_r16.lists);
493
464
  } }
494
- function ListsBrowseResource_ng_template_22_Conditional_4_For_1_ng_container_0_Template(rf, ctx) { if (rf & 1) {
465
+ function ListsBrowseResource_ng_template_19_Conditional_4_For_1_ng_container_0_Template(rf, ctx) { if (rf & 1) {
495
466
  i0.ɵɵelementContainer(0);
496
467
  } }
497
- function ListsBrowseResource_ng_template_22_Conditional_4_For_1_Template(rf, ctx) { if (rf & 1) {
498
- i0.ɵɵtemplate(0, ListsBrowseResource_ng_template_22_Conditional_4_For_1_ng_container_0_Template, 1, 0, "ng-container", 107);
468
+ function ListsBrowseResource_ng_template_19_Conditional_4_For_1_Template(rf, ctx) { if (rf & 1) {
469
+ i0.ɵɵtemplate(0, ListsBrowseResource_ng_template_19_Conditional_4_For_1_ng_container_0_Template, 1, 0, "ng-container", 100);
499
470
  } if (rf & 2) {
500
- const child_r23 = ctx.$implicit;
501
- const depth_r24 = i0.ɵɵnextContext(2).depth;
471
+ const child_r20 = ctx.$implicit;
472
+ const depth_r21 = i0.ɵɵnextContext(2).depth;
502
473
  i0.ɵɵnextContext();
503
- const categoryNodeTemplate_r17 = i0.ɵɵreference(23);
504
- i0.ɵɵproperty("ngTemplateOutlet", categoryNodeTemplate_r17)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c1, child_r23, depth_r24 + 1));
474
+ const categoryNodeTemplate_r14 = i0.ɵɵreference(20);
475
+ i0.ɵɵproperty("ngTemplateOutlet", categoryNodeTemplate_r14)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c1, child_r20, depth_r21 + 1));
505
476
  } }
506
- function ListsBrowseResource_ng_template_22_Conditional_4_Template(rf, ctx) { if (rf & 1) {
507
- i0.ɵɵrepeaterCreate(0, ListsBrowseResource_ng_template_22_Conditional_4_For_1_Template, 1, 5, "ng-container", null, i0.ɵɵrepeaterTrackByIdentity);
477
+ function ListsBrowseResource_ng_template_19_Conditional_4_Template(rf, ctx) { if (rf & 1) {
478
+ i0.ɵɵrepeaterCreate(0, ListsBrowseResource_ng_template_19_Conditional_4_For_1_Template, 1, 5, "ng-container", null, i0.ɵɵrepeaterTrackByIdentity);
508
479
  } if (rf & 2) {
509
- const node_r19 = i0.ɵɵnextContext().node;
510
- i0.ɵɵrepeater(node_r19.children);
480
+ const node_r16 = i0.ɵɵnextContext().node;
481
+ i0.ɵɵrepeater(node_r16.children);
511
482
  } }
512
- function ListsBrowseResource_ng_template_22_Template(rf, ctx) { if (rf & 1) {
513
- i0.ɵɵelementStart(0, "div", 108);
514
- i0.ɵɵconditionalCreate(1, ListsBrowseResource_ng_template_22_Conditional_1_Template, 7, 6, "div", 109);
515
- i0.ɵɵconditionalCreate(2, ListsBrowseResource_ng_template_22_Conditional_2_Template, 7, 3, "div", 110);
516
- i0.ɵɵconditionalCreate(3, ListsBrowseResource_ng_template_22_Conditional_3_Template, 3, 0, "div", 111);
517
- i0.ɵɵconditionalCreate(4, ListsBrowseResource_ng_template_22_Conditional_4_Template, 2, 0);
483
+ function ListsBrowseResource_ng_template_19_Template(rf, ctx) { if (rf & 1) {
484
+ i0.ɵɵelementStart(0, "div", 101);
485
+ i0.ɵɵconditionalCreate(1, ListsBrowseResource_ng_template_19_Conditional_1_Template, 7, 6, "div", 102);
486
+ i0.ɵɵconditionalCreate(2, ListsBrowseResource_ng_template_19_Conditional_2_Template, 7, 3, "div", 103);
487
+ i0.ɵɵconditionalCreate(3, ListsBrowseResource_ng_template_19_Conditional_3_Template, 3, 0, "div", 104);
488
+ i0.ɵɵconditionalCreate(4, ListsBrowseResource_ng_template_19_Conditional_4_Template, 2, 0);
518
489
  i0.ɵɵelementEnd();
519
490
  } if (rf & 2) {
520
- const node_r19 = ctx.node;
521
- const depth_r24 = ctx.depth;
522
- i0.ɵɵstyleProp("margin-left", depth_r24 * 20, "px");
491
+ const node_r16 = ctx.node;
492
+ const depth_r21 = ctx.depth;
493
+ i0.ɵɵstyleProp("margin-left", depth_r21 * 20, "px");
523
494
  i0.ɵɵadvance();
524
- i0.ɵɵconditional(node_r19.category ? 1 : -1);
495
+ i0.ɵɵconditional(node_r16.category ? 1 : -1);
525
496
  i0.ɵɵadvance();
526
- i0.ɵɵconditional(!node_r19.category && node_r19.lists.length > 0 ? 2 : -1);
497
+ i0.ɵɵconditional(!node_r16.category && node_r16.lists.length > 0 ? 2 : -1);
527
498
  i0.ɵɵadvance();
528
- i0.ɵɵconditional(node_r19.isExpanded ? 3 : -1);
499
+ i0.ɵɵconditional(node_r16.isExpanded ? 3 : -1);
529
500
  i0.ɵɵadvance();
530
- i0.ɵɵconditional(node_r19.isExpanded ? 4 : -1);
501
+ i0.ɵɵconditional(node_r16.isExpanded ? 4 : -1);
531
502
  } }
532
- function ListsBrowseResource_Conditional_24_Template(rf, ctx) { if (rf & 1) {
533
- const _r25 = i0.ɵɵgetCurrentView();
534
- i0.ɵɵelementStart(0, "div", 124);
535
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_24_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r25); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.closeContextMenu()); });
503
+ function ListsBrowseResource_Conditional_21_Template(rf, ctx) { if (rf & 1) {
504
+ const _r22 = i0.ɵɵgetCurrentView();
505
+ i0.ɵɵelementStart(0, "div", 117);
506
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_21_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r22); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.closeContextMenu()); });
536
507
  i0.ɵɵelementEnd();
537
508
  } }
538
- function ListsBrowseResource_Conditional_25_Conditional_1_Template(rf, ctx) { if (rf & 1) {
539
- const _r27 = i0.ɵɵgetCurrentView();
540
- i0.ɵɵelementStart(0, "button", 127);
541
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_25_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r27); const ctx_r4 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r4.editList()); });
542
- i0.ɵɵelement(1, "i", 130);
509
+ function ListsBrowseResource_Conditional_22_Conditional_1_Template(rf, ctx) { if (rf & 1) {
510
+ const _r24 = i0.ɵɵgetCurrentView();
511
+ i0.ɵɵelementStart(0, "button", 120);
512
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_22_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r24); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.editList()); });
513
+ i0.ɵɵelement(1, "i", 123);
543
514
  i0.ɵɵtext(2, " Edit ");
544
515
  i0.ɵɵelementEnd();
545
516
  } }
546
- function ListsBrowseResource_Conditional_25_Conditional_2_Template(rf, ctx) { if (rf & 1) {
547
- const _r28 = i0.ɵɵgetCurrentView();
548
- i0.ɵɵelementStart(0, "button", 127);
549
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_25_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r28); const ctx_r4 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r4.openShareDialog()); });
550
- i0.ɵɵelement(1, "i", 82);
517
+ function ListsBrowseResource_Conditional_22_Conditional_2_Template(rf, ctx) { if (rf & 1) {
518
+ const _r25 = i0.ɵɵgetCurrentView();
519
+ i0.ɵɵelementStart(0, "button", 120);
520
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_22_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r25); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.openShareDialog()); });
521
+ i0.ɵɵelement(1, "i", 75);
551
522
  i0.ɵɵtext(2, " Share ");
552
523
  i0.ɵɵelementEnd();
553
524
  } }
554
- function ListsBrowseResource_Conditional_25_Conditional_6_Template(rf, ctx) { if (rf & 1) {
555
- const _r29 = i0.ɵɵgetCurrentView();
556
- i0.ɵɵelement(0, "div", 131);
557
- i0.ɵɵelementStart(1, "button", 132);
558
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_25_Conditional_6_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r29); const ctx_r4 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r4.confirmDeleteList()); });
559
- i0.ɵɵelement(2, "i", 133);
525
+ function ListsBrowseResource_Conditional_22_Conditional_6_Template(rf, ctx) { if (rf & 1) {
526
+ const _r26 = i0.ɵɵgetCurrentView();
527
+ i0.ɵɵelement(0, "div", 124);
528
+ i0.ɵɵelementStart(1, "button", 125);
529
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_22_Conditional_6_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r26); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.confirmDeleteList()); });
530
+ i0.ɵɵelement(2, "i", 126);
560
531
  i0.ɵɵtext(3, " Delete ");
561
532
  i0.ɵɵelementEnd();
562
533
  } }
563
- function ListsBrowseResource_Conditional_25_Conditional_7_Template(rf, ctx) { if (rf & 1) {
564
- i0.ɵɵelementStart(0, "div", 129);
565
- i0.ɵɵelement(1, "i", 134);
534
+ function ListsBrowseResource_Conditional_22_Conditional_7_Template(rf, ctx) { if (rf & 1) {
535
+ i0.ɵɵelementStart(0, "div", 122);
536
+ i0.ɵɵelement(1, "i", 127);
566
537
  i0.ɵɵtext(2, " Viewer access \u2014 read only ");
567
538
  i0.ɵɵelementEnd();
568
539
  } }
569
- function ListsBrowseResource_Conditional_25_Template(rf, ctx) { if (rf & 1) {
570
- const _r26 = i0.ɵɵgetCurrentView();
571
- i0.ɵɵelementStart(0, "div", 125);
572
- i0.ɵɵconditionalCreate(1, ListsBrowseResource_Conditional_25_Conditional_1_Template, 3, 0, "button", 126);
573
- i0.ɵɵconditionalCreate(2, ListsBrowseResource_Conditional_25_Conditional_2_Template, 3, 0, "button", 126);
574
- i0.ɵɵelementStart(3, "button", 127);
575
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_25_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r26); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.duplicateList()); });
576
- i0.ɵɵelement(4, "i", 128);
540
+ function ListsBrowseResource_Conditional_22_Template(rf, ctx) { if (rf & 1) {
541
+ const _r23 = i0.ɵɵgetCurrentView();
542
+ i0.ɵɵelementStart(0, "div", 118);
543
+ i0.ɵɵconditionalCreate(1, ListsBrowseResource_Conditional_22_Conditional_1_Template, 3, 0, "button", 119);
544
+ i0.ɵɵconditionalCreate(2, ListsBrowseResource_Conditional_22_Conditional_2_Template, 3, 0, "button", 119);
545
+ i0.ɵɵelementStart(3, "button", 120);
546
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_22_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r23); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.duplicateList()); });
547
+ i0.ɵɵelement(4, "i", 121);
577
548
  i0.ɵɵtext(5, " Duplicate ");
578
549
  i0.ɵɵelementEnd();
579
- i0.ɵɵconditionalCreate(6, ListsBrowseResource_Conditional_25_Conditional_6_Template, 4, 0);
580
- i0.ɵɵconditionalCreate(7, ListsBrowseResource_Conditional_25_Conditional_7_Template, 3, 0, "div", 129);
550
+ i0.ɵɵconditionalCreate(6, ListsBrowseResource_Conditional_22_Conditional_6_Template, 4, 0);
551
+ i0.ɵɵconditionalCreate(7, ListsBrowseResource_Conditional_22_Conditional_7_Template, 3, 0, "div", 122);
581
552
  i0.ɵɵelementEnd();
582
553
  } if (rf & 2) {
583
- const ctx_r4 = i0.ɵɵnextContext();
584
- i0.ɵɵstyleProp("top", ctx_r4.contextMenuY, "px")("left", ctx_r4.contextMenuX, "px");
554
+ const ctx_r2 = i0.ɵɵnextContext();
555
+ i0.ɵɵstyleProp("top", ctx_r2.contextMenuY, "px")("left", ctx_r2.contextMenuX, "px");
585
556
  i0.ɵɵadvance();
586
- i0.ɵɵconditional(ctx_r4.contextItemCapabilities.CanEdit ? 1 : -1);
557
+ i0.ɵɵconditional(ctx_r2.contextItemCapabilities.CanEdit ? 1 : -1);
587
558
  i0.ɵɵadvance();
588
- i0.ɵɵconditional(ctx_r4.contextItemCapabilities.CanShare ? 2 : -1);
559
+ i0.ɵɵconditional(ctx_r2.contextItemCapabilities.CanShare ? 2 : -1);
589
560
  i0.ɵɵadvance(4);
590
- i0.ɵɵconditional(ctx_r4.contextItemCapabilities.CanDelete ? 6 : -1);
561
+ i0.ɵɵconditional(ctx_r2.contextItemCapabilities.CanDelete ? 6 : -1);
591
562
  i0.ɵɵadvance();
592
- i0.ɵɵconditional(!ctx_r4.contextItemCapabilities.CanEdit && !ctx_r4.contextItemCapabilities.CanShare && !ctx_r4.contextItemCapabilities.CanDelete ? 7 : -1);
563
+ i0.ɵɵconditional(!ctx_r2.contextItemCapabilities.CanEdit && !ctx_r2.contextItemCapabilities.CanShare && !ctx_r2.contextItemCapabilities.CanDelete ? 7 : -1);
593
564
  } }
594
- function ListsBrowseResource_Conditional_26_Template(rf, ctx) { if (rf & 1) {
595
- const _r30 = i0.ɵɵgetCurrentView();
596
- i0.ɵɵelementStart(0, "div", 135);
597
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_26_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r30); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.closeCreateDialog()); });
565
+ function ListsBrowseResource_Conditional_23_Template(rf, ctx) { if (rf & 1) {
566
+ const _r27 = i0.ɵɵgetCurrentView();
567
+ i0.ɵɵelementStart(0, "div", 128);
568
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_23_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r27); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.closeCreateDialog()); });
598
569
  i0.ɵɵelementEnd();
599
570
  } }
600
- function ListsBrowseResource_Conditional_27_Conditional_15_Template(rf, ctx) { if (rf & 1) {
601
- const _r32 = i0.ɵɵgetCurrentView();
602
- i0.ɵɵelementStart(0, "div", 140)(1, "label");
571
+ function ListsBrowseResource_Conditional_24_Conditional_15_Template(rf, ctx) { if (rf & 1) {
572
+ const _r29 = i0.ɵɵgetCurrentView();
573
+ i0.ɵɵelementStart(0, "div", 133)(1, "label");
603
574
  i0.ɵɵtext(2, "Entity *");
604
575
  i0.ɵɵelementEnd();
605
- i0.ɵɵelementStart(3, "div", 149)(4, "input", 150, 1);
606
- i0.ɵɵtwoWayListener("ngModelChange", function ListsBrowseResource_Conditional_27_Conditional_15_Template_input_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r32); const ctx_r4 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r4.entitySearchTerm, $event) || (ctx_r4.entitySearchTerm = $event); return i0.ɵɵresetView($event); });
607
- i0.ɵɵlistener("ngModelChange", function ListsBrowseResource_Conditional_27_Conditional_15_Template_input_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r32); const ctx_r4 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r4.filterEntities($event)); })("focus", function ListsBrowseResource_Conditional_27_Conditional_15_Template_input_focus_4_listener() { i0.ɵɵrestoreView(_r32); const entityInput_r33 = i0.ɵɵreference(5); const ctx_r4 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r4.openEntityDropdown(entityInput_r33)); });
576
+ i0.ɵɵelementStart(3, "div", 142)(4, "input", 143, 1);
577
+ i0.ɵɵtwoWayListener("ngModelChange", function ListsBrowseResource_Conditional_24_Conditional_15_Template_input_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r29); const ctx_r2 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r2.entitySearchTerm, $event) || (ctx_r2.entitySearchTerm = $event); return i0.ɵɵresetView($event); });
578
+ i0.ɵɵlistener("ngModelChange", function ListsBrowseResource_Conditional_24_Conditional_15_Template_input_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r29); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.filterEntities($event)); })("focus", function ListsBrowseResource_Conditional_24_Conditional_15_Template_input_focus_4_listener() { i0.ɵɵrestoreView(_r29); const entityInput_r30 = i0.ɵɵreference(5); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.openEntityDropdown(entityInput_r30)); });
608
579
  i0.ɵɵelementEnd()()();
609
580
  } if (rf & 2) {
610
- const ctx_r4 = i0.ɵɵnextContext(2);
581
+ const ctx_r2 = i0.ɵɵnextContext(2);
611
582
  i0.ɵɵadvance(4);
612
- i0.ɵɵtwoWayProperty("ngModel", ctx_r4.entitySearchTerm);
583
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r2.entitySearchTerm);
613
584
  } }
614
- function ListsBrowseResource_Conditional_27_Conditional_16_Template(rf, ctx) { if (rf & 1) {
615
- i0.ɵɵelementStart(0, "div", 140)(1, "label");
585
+ function ListsBrowseResource_Conditional_24_Conditional_16_Template(rf, ctx) { if (rf & 1) {
586
+ i0.ɵɵelementStart(0, "div", 133)(1, "label");
616
587
  i0.ɵɵtext(2, "Entity");
617
588
  i0.ɵɵelementEnd();
618
- i0.ɵɵelement(3, "input", 151);
589
+ i0.ɵɵelement(3, "input", 144);
619
590
  i0.ɵɵelementEnd();
620
591
  } if (rf & 2) {
621
- const ctx_r4 = i0.ɵɵnextContext(2);
592
+ const ctx_r2 = i0.ɵɵnextContext(2);
622
593
  i0.ɵɵadvance(3);
623
- i0.ɵɵproperty("value", ctx_r4.entitySearchTerm);
594
+ i0.ɵɵproperty("value", ctx_r2.entitySearchTerm);
624
595
  } }
625
- function ListsBrowseResource_Conditional_27_For_24_Template(rf, ctx) { if (rf & 1) {
626
- i0.ɵɵelementStart(0, "option", 144);
596
+ function ListsBrowseResource_Conditional_24_For_24_Template(rf, ctx) { if (rf & 1) {
597
+ i0.ɵɵelementStart(0, "option", 137);
627
598
  i0.ɵɵtext(1);
628
599
  i0.ɵɵelementEnd();
629
600
  } if (rf & 2) {
630
- const cat_r34 = ctx.$implicit;
631
- i0.ɵɵproperty("ngValue", cat_r34.ID);
601
+ const cat_r31 = ctx.$implicit;
602
+ i0.ɵɵproperty("ngValue", cat_r31.ID);
632
603
  i0.ɵɵadvance();
633
- i0.ɵɵtextInterpolate(cat_r34.displayName);
604
+ i0.ɵɵtextInterpolate(cat_r31.displayName);
634
605
  } }
635
- function ListsBrowseResource_Conditional_27_Conditional_27_Template(rf, ctx) { if (rf & 1) {
636
- i0.ɵɵelement(0, "i", 147);
606
+ function ListsBrowseResource_Conditional_24_Conditional_27_Template(rf, ctx) { if (rf & 1) {
607
+ i0.ɵɵelement(0, "i", 140);
637
608
  } }
638
- function ListsBrowseResource_Conditional_27_Template(rf, ctx) { if (rf & 1) {
639
- const _r31 = i0.ɵɵgetCurrentView();
640
- i0.ɵɵelementStart(0, "div", 22)(1, "div", 136)(2, "h3");
609
+ function ListsBrowseResource_Conditional_24_Template(rf, ctx) { if (rf & 1) {
610
+ const _r28 = i0.ɵɵgetCurrentView();
611
+ i0.ɵɵelementStart(0, "div", 21)(1, "div", 129)(2, "h3");
641
612
  i0.ɵɵtext(3);
642
613
  i0.ɵɵelementEnd();
643
- i0.ɵɵelementStart(4, "button", 137);
644
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_27_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r31); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.closeCreateDialog()); });
645
- i0.ɵɵelement(5, "i", 138);
614
+ i0.ɵɵelementStart(4, "button", 130);
615
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_24_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r28); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.closeCreateDialog()); });
616
+ i0.ɵɵelement(5, "i", 131);
646
617
  i0.ɵɵelementEnd()();
647
- i0.ɵɵelementStart(6, "div", 139)(7, "div", 140)(8, "label");
618
+ i0.ɵɵelementStart(6, "div", 132)(7, "div", 133)(8, "label");
648
619
  i0.ɵɵtext(9, "Name *");
649
620
  i0.ɵɵelementEnd();
650
- i0.ɵɵelementStart(10, "input", 141);
651
- i0.ɵɵtwoWayListener("ngModelChange", function ListsBrowseResource_Conditional_27_Template_input_ngModelChange_10_listener($event) { i0.ɵɵrestoreView(_r31); const ctx_r4 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r4.newListName, $event) || (ctx_r4.newListName = $event); return i0.ɵɵresetView($event); });
621
+ i0.ɵɵelementStart(10, "input", 134);
622
+ i0.ɵɵtwoWayListener("ngModelChange", function ListsBrowseResource_Conditional_24_Template_input_ngModelChange_10_listener($event) { i0.ɵɵrestoreView(_r28); const ctx_r2 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r2.newListName, $event) || (ctx_r2.newListName = $event); return i0.ɵɵresetView($event); });
652
623
  i0.ɵɵelementEnd()();
653
- i0.ɵɵelementStart(11, "div", 140)(12, "label");
624
+ i0.ɵɵelementStart(11, "div", 133)(12, "label");
654
625
  i0.ɵɵtext(13, "Description");
655
626
  i0.ɵɵelementEnd();
656
- i0.ɵɵelementStart(14, "textarea", 142);
657
- i0.ɵɵtwoWayListener("ngModelChange", function ListsBrowseResource_Conditional_27_Template_textarea_ngModelChange_14_listener($event) { i0.ɵɵrestoreView(_r31); const ctx_r4 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r4.newListDescription, $event) || (ctx_r4.newListDescription = $event); return i0.ɵɵresetView($event); });
627
+ i0.ɵɵelementStart(14, "textarea", 135);
628
+ i0.ɵɵtwoWayListener("ngModelChange", function ListsBrowseResource_Conditional_24_Template_textarea_ngModelChange_14_listener($event) { i0.ɵɵrestoreView(_r28); const ctx_r2 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r2.newListDescription, $event) || (ctx_r2.newListDescription = $event); return i0.ɵɵresetView($event); });
658
629
  i0.ɵɵelementEnd()();
659
- i0.ɵɵconditionalCreate(15, ListsBrowseResource_Conditional_27_Conditional_15_Template, 6, 1, "div", 140);
660
- i0.ɵɵconditionalCreate(16, ListsBrowseResource_Conditional_27_Conditional_16_Template, 4, 1, "div", 140);
661
- i0.ɵɵelementStart(17, "div", 140)(18, "label");
630
+ i0.ɵɵconditionalCreate(15, ListsBrowseResource_Conditional_24_Conditional_15_Template, 6, 1, "div", 133);
631
+ i0.ɵɵconditionalCreate(16, ListsBrowseResource_Conditional_24_Conditional_16_Template, 4, 1, "div", 133);
632
+ i0.ɵɵelementStart(17, "div", 133)(18, "label");
662
633
  i0.ɵɵtext(19, "Category");
663
634
  i0.ɵɵelementEnd();
664
- i0.ɵɵelementStart(20, "select", 143);
665
- i0.ɵɵtwoWayListener("ngModelChange", function ListsBrowseResource_Conditional_27_Template_select_ngModelChange_20_listener($event) { i0.ɵɵrestoreView(_r31); const ctx_r4 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r4.selectedCategoryId, $event) || (ctx_r4.selectedCategoryId = $event); return i0.ɵɵresetView($event); });
666
- i0.ɵɵelementStart(21, "option", 144);
635
+ i0.ɵɵelementStart(20, "select", 136);
636
+ i0.ɵɵtwoWayListener("ngModelChange", function ListsBrowseResource_Conditional_24_Template_select_ngModelChange_20_listener($event) { i0.ɵɵrestoreView(_r28); const ctx_r2 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r2.selectedCategoryId, $event) || (ctx_r2.selectedCategoryId = $event); return i0.ɵɵresetView($event); });
637
+ i0.ɵɵelementStart(21, "option", 137);
667
638
  i0.ɵɵtext(22, "No category");
668
639
  i0.ɵɵelementEnd();
669
- i0.ɵɵrepeaterCreate(23, ListsBrowseResource_Conditional_27_For_24_Template, 2, 2, "option", 144, i0.ɵɵrepeaterTrackByIdentity);
640
+ i0.ɵɵrepeaterCreate(23, ListsBrowseResource_Conditional_24_For_24_Template, 2, 2, "option", 137, i0.ɵɵrepeaterTrackByIdentity);
670
641
  i0.ɵɵelementEnd()()();
671
- i0.ɵɵelementStart(25, "div", 145)(26, "button", 146);
672
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_27_Template_button_click_26_listener() { i0.ɵɵrestoreView(_r31); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.saveList()); });
673
- i0.ɵɵconditionalCreate(27, ListsBrowseResource_Conditional_27_Conditional_27_Template, 1, 0, "i", 147);
642
+ i0.ɵɵelementStart(25, "div", 138)(26, "button", 139);
643
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_24_Template_button_click_26_listener() { i0.ɵɵrestoreView(_r28); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.saveList()); });
644
+ i0.ɵɵconditionalCreate(27, ListsBrowseResource_Conditional_24_Conditional_27_Template, 1, 0, "i", 140);
674
645
  i0.ɵɵtext(28);
675
646
  i0.ɵɵelementEnd();
676
- i0.ɵɵelementStart(29, "button", 148);
677
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_27_Template_button_click_29_listener() { i0.ɵɵrestoreView(_r31); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.closeCreateDialog()); });
647
+ i0.ɵɵelementStart(29, "button", 141);
648
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_24_Template_button_click_29_listener() { i0.ɵɵrestoreView(_r28); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.closeCreateDialog()); });
678
649
  i0.ɵɵtext(30, "Cancel");
679
650
  i0.ɵɵelementEnd()()();
680
651
  } if (rf & 2) {
681
- const ctx_r4 = i0.ɵɵnextContext();
652
+ const ctx_r2 = i0.ɵɵnextContext();
682
653
  i0.ɵɵadvance(3);
683
- i0.ɵɵtextInterpolate(ctx_r4.editingList ? "Edit List" : "Create New List");
654
+ i0.ɵɵtextInterpolate(ctx_r2.editingList ? "Edit List" : "Create New List");
684
655
  i0.ɵɵadvance(7);
685
- i0.ɵɵtwoWayProperty("ngModel", ctx_r4.newListName);
656
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r2.newListName);
686
657
  i0.ɵɵadvance(4);
687
- i0.ɵɵtwoWayProperty("ngModel", ctx_r4.newListDescription);
658
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r2.newListDescription);
688
659
  i0.ɵɵadvance();
689
- i0.ɵɵconditional(!ctx_r4.editingList ? 15 : -1);
660
+ i0.ɵɵconditional(!ctx_r2.editingList ? 15 : -1);
690
661
  i0.ɵɵadvance();
691
- i0.ɵɵconditional(ctx_r4.editingList ? 16 : -1);
662
+ i0.ɵɵconditional(ctx_r2.editingList ? 16 : -1);
692
663
  i0.ɵɵadvance(4);
693
- i0.ɵɵtwoWayProperty("ngModel", ctx_r4.selectedCategoryId);
664
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r2.selectedCategoryId);
694
665
  i0.ɵɵadvance();
695
666
  i0.ɵɵproperty("ngValue", null);
696
667
  i0.ɵɵadvance(2);
697
- i0.ɵɵrepeater(ctx_r4.flatCategories);
668
+ i0.ɵɵrepeater(ctx_r2.flatCategories);
698
669
  i0.ɵɵadvance(3);
699
- i0.ɵɵproperty("disabled", !ctx_r4.newListName || !ctx_r4.editingList && !ctx_r4.selectedEntityId || ctx_r4.isSaving);
670
+ i0.ɵɵproperty("disabled", !ctx_r2.newListName || !ctx_r2.editingList && !ctx_r2.selectedEntityId || ctx_r2.isSaving);
700
671
  i0.ɵɵadvance();
701
- i0.ɵɵconditional(ctx_r4.isSaving ? 27 : -1);
672
+ i0.ɵɵconditional(ctx_r2.isSaving ? 27 : -1);
702
673
  i0.ɵɵadvance();
703
- i0.ɵɵtextInterpolate1(" ", ctx_r4.isSaving ? "Saving..." : ctx_r4.editingList ? "Save" : "Create", " ");
674
+ i0.ɵɵtextInterpolate1(" ", ctx_r2.isSaving ? "Saving..." : ctx_r2.editingList ? "Save" : "Create", " ");
704
675
  i0.ɵɵadvance();
705
- i0.ɵɵproperty("disabled", ctx_r4.isSaving);
676
+ i0.ɵɵproperty("disabled", ctx_r2.isSaving);
706
677
  } }
707
- function ListsBrowseResource_Conditional_28_Template(rf, ctx) { if (rf & 1) {
708
- const _r35 = i0.ɵɵgetCurrentView();
709
- i0.ɵɵelementStart(0, "div", 135);
710
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_28_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r35); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.cancelDelete()); });
678
+ function ListsBrowseResource_Conditional_25_Template(rf, ctx) { if (rf & 1) {
679
+ const _r32 = i0.ɵɵgetCurrentView();
680
+ i0.ɵɵelementStart(0, "div", 128);
681
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_25_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r32); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.cancelDelete()); });
711
682
  i0.ɵɵelementEnd();
712
683
  } }
713
- function ListsBrowseResource_Conditional_29_Conditional_16_Template(rf, ctx) { if (rf & 1) {
714
- i0.ɵɵelement(0, "i", 147);
684
+ function ListsBrowseResource_Conditional_26_Conditional_16_Template(rf, ctx) { if (rf & 1) {
685
+ i0.ɵɵelement(0, "i", 140);
715
686
  } }
716
- function ListsBrowseResource_Conditional_29_Template(rf, ctx) { if (rf & 1) {
717
- const _r36 = i0.ɵɵgetCurrentView();
718
- i0.ɵɵelementStart(0, "div", 23)(1, "div", 136)(2, "h3");
687
+ function ListsBrowseResource_Conditional_26_Template(rf, ctx) { if (rf & 1) {
688
+ const _r33 = i0.ɵɵgetCurrentView();
689
+ i0.ɵɵelementStart(0, "div", 22)(1, "div", 129)(2, "h3");
719
690
  i0.ɵɵtext(3, "Delete List");
720
691
  i0.ɵɵelementEnd();
721
- i0.ɵɵelementStart(4, "button", 137);
722
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_29_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r36); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.cancelDelete()); });
723
- i0.ɵɵelement(5, "i", 138);
692
+ i0.ɵɵelementStart(4, "button", 130);
693
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_26_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r33); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.cancelDelete()); });
694
+ i0.ɵɵelement(5, "i", 131);
724
695
  i0.ɵɵelementEnd()();
725
- i0.ɵɵelementStart(6, "div", 139)(7, "p");
696
+ i0.ɵɵelementStart(6, "div", 132)(7, "p");
726
697
  i0.ɵɵtext(8, "Are you sure you want to delete \"");
727
698
  i0.ɵɵelementStart(9, "strong");
728
699
  i0.ɵɵtext(10);
729
700
  i0.ɵɵelementEnd();
730
701
  i0.ɵɵtext(11, "\"?");
731
702
  i0.ɵɵelementEnd();
732
- i0.ɵɵelementStart(12, "p", 152);
703
+ i0.ɵɵelementStart(12, "p", 145);
733
704
  i0.ɵɵtext(13, "This will also remove all items in the list.");
734
705
  i0.ɵɵelementEnd()();
735
- i0.ɵɵelementStart(14, "div", 145)(15, "button", 153);
736
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_29_Template_button_click_15_listener() { i0.ɵɵrestoreView(_r36); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.deleteList()); });
737
- i0.ɵɵconditionalCreate(16, ListsBrowseResource_Conditional_29_Conditional_16_Template, 1, 0, "i", 147);
706
+ i0.ɵɵelementStart(14, "div", 138)(15, "button", 146);
707
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_26_Template_button_click_15_listener() { i0.ɵɵrestoreView(_r33); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.deleteList()); });
708
+ i0.ɵɵconditionalCreate(16, ListsBrowseResource_Conditional_26_Conditional_16_Template, 1, 0, "i", 140);
738
709
  i0.ɵɵtext(17);
739
710
  i0.ɵɵelementEnd();
740
- i0.ɵɵelementStart(18, "button", 148);
741
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_29_Template_button_click_18_listener() { i0.ɵɵrestoreView(_r36); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.cancelDelete()); });
711
+ i0.ɵɵelementStart(18, "button", 141);
712
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_26_Template_button_click_18_listener() { i0.ɵɵrestoreView(_r33); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.cancelDelete()); });
742
713
  i0.ɵɵtext(19, "Cancel");
743
714
  i0.ɵɵelementEnd()()();
744
715
  } if (rf & 2) {
745
- const ctx_r4 = i0.ɵɵnextContext();
716
+ const ctx_r2 = i0.ɵɵnextContext();
746
717
  i0.ɵɵadvance(10);
747
- i0.ɵɵtextInterpolate(ctx_r4.deleteListName);
718
+ i0.ɵɵtextInterpolate(ctx_r2.deleteListName);
748
719
  i0.ɵɵadvance(5);
749
- i0.ɵɵproperty("disabled", ctx_r4.isDeleting);
720
+ i0.ɵɵproperty("disabled", ctx_r2.isDeleting);
750
721
  i0.ɵɵadvance();
751
- i0.ɵɵconditional(ctx_r4.isDeleting ? 16 : -1);
722
+ i0.ɵɵconditional(ctx_r2.isDeleting ? 16 : -1);
752
723
  i0.ɵɵadvance();
753
- i0.ɵɵtextInterpolate1(" ", ctx_r4.isDeleting ? "Deleting..." : "Delete", " ");
724
+ i0.ɵɵtextInterpolate1(" ", ctx_r2.isDeleting ? "Deleting..." : "Delete", " ");
754
725
  i0.ɵɵadvance();
755
- i0.ɵɵproperty("disabled", ctx_r4.isDeleting);
726
+ i0.ɵɵproperty("disabled", ctx_r2.isDeleting);
756
727
  } }
757
- function ListsBrowseResource_Conditional_30_Template(rf, ctx) { if (rf & 1) {
758
- const _r37 = i0.ɵɵgetCurrentView();
759
- i0.ɵɵelementStart(0, "mj-list-share-dialog", 154);
760
- i0.ɵɵlistener("complete", function ListsBrowseResource_Conditional_30_Template_mj_list_share_dialog_complete_0_listener($event) { i0.ɵɵrestoreView(_r37); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.onShareComplete($event)); })("cancel", function ListsBrowseResource_Conditional_30_Template_mj_list_share_dialog_cancel_0_listener() { i0.ɵɵrestoreView(_r37); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.onShareCancel()); })("manageInvitations", function ListsBrowseResource_Conditional_30_Template_mj_list_share_dialog_manageInvitations_0_listener() { i0.ɵɵrestoreView(_r37); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.onManageInvitations()); })("viewAuditLog", function ListsBrowseResource_Conditional_30_Template_mj_list_share_dialog_viewAuditLog_0_listener() { i0.ɵɵrestoreView(_r37); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.onViewAuditLog()); });
728
+ function ListsBrowseResource_Conditional_27_Template(rf, ctx) { if (rf & 1) {
729
+ const _r34 = i0.ɵɵgetCurrentView();
730
+ i0.ɵɵelementStart(0, "mj-list-share-dialog", 147);
731
+ i0.ɵɵlistener("complete", function ListsBrowseResource_Conditional_27_Template_mj_list_share_dialog_complete_0_listener($event) { i0.ɵɵrestoreView(_r34); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onShareComplete($event)); })("cancel", function ListsBrowseResource_Conditional_27_Template_mj_list_share_dialog_cancel_0_listener() { i0.ɵɵrestoreView(_r34); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onShareCancel()); })("manageInvitations", function ListsBrowseResource_Conditional_27_Template_mj_list_share_dialog_manageInvitations_0_listener() { i0.ɵɵrestoreView(_r34); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onManageInvitations()); })("viewAuditLog", function ListsBrowseResource_Conditional_27_Template_mj_list_share_dialog_viewAuditLog_0_listener() { i0.ɵɵrestoreView(_r34); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onViewAuditLog()); });
761
732
  i0.ɵɵelementEnd();
762
733
  } if (rf & 2) {
763
- const ctx_r4 = i0.ɵɵnextContext();
764
- i0.ɵɵproperty("config", ctx_r4.shareDialogConfig)("visible", ctx_r4.showShareDialog);
734
+ const ctx_r2 = i0.ɵɵnextContext();
735
+ i0.ɵɵproperty("config", ctx_r2.shareDialogConfig)("visible", ctx_r2.showShareDialog);
765
736
  } }
766
- function ListsBrowseResource_Conditional_31_Template(rf, ctx) { if (rf & 1) {
767
- const _r38 = i0.ɵɵgetCurrentView();
768
- i0.ɵɵelementStart(0, "mj-dialog", 155);
769
- i0.ɵɵlistener("Close", function ListsBrowseResource_Conditional_31_Template_mj_dialog_Close_0_listener() { i0.ɵɵrestoreView(_r38); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.closeInvitationsDialog()); });
770
- i0.ɵɵelementStart(1, "div", 156);
771
- i0.ɵɵelement(2, "mj-list-invitations", 157);
772
- i0.ɵɵelementEnd();
773
- i0.ɵɵelementStart(3, "mj-dialog-actions")(4, "button", 158);
774
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_31_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r38); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.closeInvitationsDialog()); });
737
+ function ListsBrowseResource_Conditional_28_Template(rf, ctx) { if (rf & 1) {
738
+ const _r35 = i0.ɵɵgetCurrentView();
739
+ i0.ɵɵelementStart(0, "mj-dialog", 148);
740
+ i0.ɵɵlistener("Close", function ListsBrowseResource_Conditional_28_Template_mj_dialog_Close_0_listener() { i0.ɵɵrestoreView(_r35); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.closeInvitationsDialog()); });
741
+ i0.ɵɵelementStart(1, "div", 149);
742
+ i0.ɵɵelement(2, "mj-list-invitations", 150);
743
+ i0.ɵɵelementEnd();
744
+ i0.ɵɵelementStart(3, "mj-dialog-actions")(4, "button", 151);
745
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_28_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r35); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.closeInvitationsDialog()); });
775
746
  i0.ɵɵtext(5, "Close");
776
747
  i0.ɵɵelementEnd()()();
777
748
  } if (rf & 2) {
778
- const ctx_r4 = i0.ɵɵnextContext();
779
- i0.ɵɵproperty("Visible", true)("Title", "Invitations \u2014 " + (ctx_r4.activeShareListName ?? "List"))("MinWidth", 640)("Width", 900)("Height", 640);
749
+ const ctx_r2 = i0.ɵɵnextContext();
750
+ i0.ɵɵproperty("Visible", true)("Title", "Invitations \u2014 " + (ctx_r2.activeShareListName ?? "List"))("MinWidth", 640)("Width", 900)("Height", 640);
780
751
  i0.ɵɵadvance(2);
781
- i0.ɵɵproperty("Provider", ctx_r4.ProviderToUse)("ListID", ctx_r4.activeShareListId)("ListName", ctx_r4.activeShareListName);
752
+ i0.ɵɵproperty("Provider", ctx_r2.ProviderToUse)("ListID", ctx_r2.activeShareListId)("ListName", ctx_r2.activeShareListName);
782
753
  } }
783
- function ListsBrowseResource_Conditional_32_Template(rf, ctx) { if (rf & 1) {
784
- const _r39 = i0.ɵɵgetCurrentView();
785
- i0.ɵɵelementStart(0, "mj-dialog", 155);
786
- i0.ɵɵlistener("Close", function ListsBrowseResource_Conditional_32_Template_mj_dialog_Close_0_listener() { i0.ɵɵrestoreView(_r39); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.closeAuditLogDialog()); });
787
- i0.ɵɵelementStart(1, "div", 156);
788
- i0.ɵɵelement(2, "mj-list-audit-log", 159);
789
- i0.ɵɵelementEnd();
790
- i0.ɵɵelementStart(3, "mj-dialog-actions")(4, "button", 158);
791
- i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_32_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r39); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.closeAuditLogDialog()); });
754
+ function ListsBrowseResource_Conditional_29_Template(rf, ctx) { if (rf & 1) {
755
+ const _r36 = i0.ɵɵgetCurrentView();
756
+ i0.ɵɵelementStart(0, "mj-dialog", 148);
757
+ i0.ɵɵlistener("Close", function ListsBrowseResource_Conditional_29_Template_mj_dialog_Close_0_listener() { i0.ɵɵrestoreView(_r36); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.closeAuditLogDialog()); });
758
+ i0.ɵɵelementStart(1, "div", 149);
759
+ i0.ɵɵelement(2, "mj-list-audit-log", 152);
760
+ i0.ɵɵelementEnd();
761
+ i0.ɵɵelementStart(3, "mj-dialog-actions")(4, "button", 151);
762
+ i0.ɵɵlistener("click", function ListsBrowseResource_Conditional_29_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r36); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.closeAuditLogDialog()); });
792
763
  i0.ɵɵtext(5, "Close");
793
764
  i0.ɵɵelementEnd()()();
794
765
  } if (rf & 2) {
795
- const ctx_r4 = i0.ɵɵnextContext();
796
- i0.ɵɵproperty("Visible", true)("Title", "Audit Log \u2014 " + (ctx_r4.activeShareListName ?? "List"))("MinWidth", 720)("Width", 980)("Height", 680);
766
+ const ctx_r2 = i0.ɵɵnextContext();
767
+ i0.ɵɵproperty("Visible", true)("Title", "Audit Log \u2014 " + (ctx_r2.activeShareListName ?? "List"))("MinWidth", 720)("Width", 980)("Height", 680);
797
768
  i0.ɵɵadvance(2);
798
- i0.ɵɵproperty("Provider", ctx_r4.ProviderToUse)("ListID", ctx_r4.activeShareListId);
769
+ i0.ɵɵproperty("Provider", ctx_r2.ProviderToUse)("ListID", ctx_r2.activeShareListId);
799
770
  } }
800
- function ListsBrowseResource_Conditional_33_For_3_Template(rf, ctx) { if (rf & 1) {
801
- const _r40 = i0.ɵɵgetCurrentView();
802
- i0.ɵɵelementStart(0, "div", 164);
803
- i0.ɵɵlistener("mousedown", function ListsBrowseResource_Conditional_33_For_3_Template_div_mousedown_0_listener($event) { const entity_r41 = i0.ɵɵrestoreView(_r40).$implicit; const ctx_r4 = i0.ɵɵnextContext(2); ctx_r4.selectEntity(entity_r41); return i0.ɵɵresetView($event.preventDefault()); });
771
+ function ListsBrowseResource_Conditional_30_For_3_Template(rf, ctx) { if (rf & 1) {
772
+ const _r37 = i0.ɵɵgetCurrentView();
773
+ i0.ɵɵelementStart(0, "div", 157);
774
+ i0.ɵɵlistener("mousedown", function ListsBrowseResource_Conditional_30_For_3_Template_div_mousedown_0_listener($event) { const entity_r38 = i0.ɵɵrestoreView(_r37).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); ctx_r2.selectEntity(entity_r38); return i0.ɵɵresetView($event.preventDefault()); });
804
775
  i0.ɵɵtext(1);
805
776
  i0.ɵɵelementEnd();
806
777
  } if (rf & 2) {
807
- const entity_r41 = ctx.$implicit;
778
+ const entity_r38 = ctx.$implicit;
808
779
  i0.ɵɵadvance();
809
- i0.ɵɵtextInterpolate1(" ", entity_r41.Name, " ");
780
+ i0.ɵɵtextInterpolate1(" ", entity_r38.Name, " ");
810
781
  } }
811
- function ListsBrowseResource_Conditional_33_Conditional_4_Template(rf, ctx) { if (rf & 1) {
812
- i0.ɵɵelementStart(0, "div", 163);
782
+ function ListsBrowseResource_Conditional_30_Conditional_4_Template(rf, ctx) { if (rf & 1) {
783
+ i0.ɵɵelementStart(0, "div", 156);
813
784
  i0.ɵɵtext(1, " No entities found ");
814
785
  i0.ɵɵelementEnd();
815
786
  } }
816
- function ListsBrowseResource_Conditional_33_Template(rf, ctx) { if (rf & 1) {
817
- i0.ɵɵelementStart(0, "div", 160)(1, "div", 161);
818
- i0.ɵɵrepeaterCreate(2, ListsBrowseResource_Conditional_33_For_3_Template, 2, 1, "div", 162, i0.ɵɵrepeaterTrackByIdentity);
819
- i0.ɵɵconditionalCreate(4, ListsBrowseResource_Conditional_33_Conditional_4_Template, 2, 0, "div", 163);
787
+ function ListsBrowseResource_Conditional_30_Template(rf, ctx) { if (rf & 1) {
788
+ i0.ɵɵelementStart(0, "div", 153)(1, "div", 154);
789
+ i0.ɵɵrepeaterCreate(2, ListsBrowseResource_Conditional_30_For_3_Template, 2, 1, "div", 155, i0.ɵɵrepeaterTrackByIdentity);
790
+ i0.ɵɵconditionalCreate(4, ListsBrowseResource_Conditional_30_Conditional_4_Template, 2, 0, "div", 156);
820
791
  i0.ɵɵelementEnd()();
821
792
  } if (rf & 2) {
822
- const ctx_r4 = i0.ɵɵnextContext();
823
- i0.ɵɵstyleProp("top", ctx_r4.entityDropdownPosition.top, "px")("left", ctx_r4.entityDropdownPosition.left, "px")("width", ctx_r4.entityDropdownPosition.width, "px");
824
- i0.ɵɵclassProp("dropdown-above", ctx_r4.entityDropdownPosition.openAbove);
793
+ const ctx_r2 = i0.ɵɵnextContext();
794
+ i0.ɵɵstyleProp("top", ctx_r2.entityDropdownPosition.top, "px")("left", ctx_r2.entityDropdownPosition.left, "px")("width", ctx_r2.entityDropdownPosition.width, "px");
795
+ i0.ɵɵclassProp("dropdown-above", ctx_r2.entityDropdownPosition.openAbove);
825
796
  i0.ɵɵadvance();
826
- i0.ɵɵclassProp("open-above", ctx_r4.entityDropdownPosition.openAbove);
797
+ i0.ɵɵclassProp("open-above", ctx_r2.entityDropdownPosition.openAbove);
827
798
  i0.ɵɵadvance();
828
- i0.ɵɵrepeater(ctx_r4.filteredEntitiesList);
799
+ i0.ɵɵrepeater(ctx_r2.filteredEntitiesList);
829
800
  i0.ɵɵadvance(2);
830
- i0.ɵɵconditional(ctx_r4.filteredEntitiesList.length === 0 ? 4 : -1);
801
+ i0.ɵɵconditional(ctx_r2.filteredEntitiesList.length === 0 ? 4 : -1);
831
802
  } }
832
803
  let ListsBrowseResource = class ListsBrowseResource extends BaseResourceComponent {
833
804
  cdr;
@@ -1182,7 +1153,11 @@ let ListsBrowseResource = class ListsBrowseResource extends BaseResourceComponen
1182
1153
  ];
1183
1154
  /** Values record consumed by the centralized <mj-filter-panel>. */
1184
1155
  get listFilterValues() {
1185
- return { selectedOwner: this.selectedOwner, selectedEntity: this.selectedEntity };
1156
+ return {
1157
+ selectedOwner: this.selectedOwner,
1158
+ selectedEntity: this.selectedEntity,
1159
+ favorites: this.showOnlyFavorites ? 'favorites' : 'all',
1160
+ };
1186
1161
  }
1187
1162
  /** Field config consumed by the centralized <mj-filter-panel>. */
1188
1163
  get listFilterFields() {
@@ -1202,23 +1177,34 @@ let ListsBrowseResource = class ListsBrowseResource extends BaseResourceComponen
1202
1177
  filterable: this.entityOptions.length > 10,
1203
1178
  options: this.entityOptions.map(o => ({ text: o.name, value: o.value })),
1204
1179
  },
1180
+ {
1181
+ key: 'favorites',
1182
+ type: 'chips',
1183
+ label: 'Favorites',
1184
+ chipOptions: [
1185
+ { text: 'All lists', value: 'all' },
1186
+ { text: 'Favorites only', value: 'favorites' },
1187
+ ],
1188
+ },
1205
1189
  ];
1206
1190
  }
1207
1191
  /** Receive popover updates and apply them. */
1208
1192
  onFilterValuesChange(values) {
1209
1193
  this.selectedOwner = values['selectedOwner'] ?? 'mine';
1210
1194
  this.selectedEntity = values['selectedEntity'] ?? 'all';
1195
+ this.showOnlyFavorites = values['favorites'] === 'favorites';
1211
1196
  this.applyFilters();
1212
1197
  this.buildCategoryTree();
1213
1198
  }
1214
- /** Reset popover filters to defaults; leaves searchTerm alone. */
1199
+ /** Reset the popover's own fields (Owner · Entity · Favorites); leaves search + tags alone. */
1215
1200
  resetPopoverFilters() {
1216
1201
  this.selectedOwner = 'mine';
1217
1202
  this.selectedEntity = 'all';
1203
+ this.showOnlyFavorites = false;
1218
1204
  this.applyFilters();
1219
1205
  this.buildCategoryTree();
1220
1206
  }
1221
- /** Active filter count for the popover badge (excludes searchTerm). */
1207
+ /** Active popover-field count for the badge (Owner + Entity; excludes search). */
1222
1208
  get ActiveFilterCount() {
1223
1209
  let n = 0;
1224
1210
  if (this.selectedOwner && this.selectedOwner !== 'mine')
@@ -1227,6 +1213,19 @@ let ListsBrowseResource = class ListsBrowseResource extends BaseResourceComponen
1227
1213
  n++;
1228
1214
  return n;
1229
1215
  }
1216
+ /** Total active filters (Owner + Entity + Favorites + Tags) — drives the Filter button badge. */
1217
+ get TotalActiveFilterCount() {
1218
+ return this.ActiveFilterCount + (this.showOnlyFavorites ? 1 : 0) + this.tagFilters.length;
1219
+ }
1220
+ /** Clear every filter (Owner · Entity · Favorites · Tags). Leaves search. */
1221
+ clearAllAppliedFilters() {
1222
+ this.selectedOwner = 'mine';
1223
+ this.selectedEntity = 'all';
1224
+ this.showOnlyFavorites = false;
1225
+ this.tagFilters = [];
1226
+ void this.recomputeTagMembership();
1227
+ this.buildCategoryTree();
1228
+ }
1230
1229
  onSearchChange(term) {
1231
1230
  this.searchTerm = term;
1232
1231
  this.applyFilters();
@@ -1962,98 +1961,86 @@ let ListsBrowseResource = class ListsBrowseResource extends BaseResourceComponen
1962
1961
  static ɵfac = function ListsBrowseResource_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ListsBrowseResource)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i1.TabService), i0.ɵɵdirectiveInject(i2.MJNotificationService), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i3.ListSharingService)); };
1963
1962
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ListsBrowseResource, selectors: [["mj-lists-browse-resource"]], hostBindings: function ListsBrowseResource_HostBindings(rf, ctx) { if (rf & 1) {
1964
1963
  i0.ɵɵlistener("click", function ListsBrowseResource_click_HostBindingHandler($event) { return ctx.onDocumentClick($event); }, i0.ɵɵresolveDocument)("keydown.escape", function ListsBrowseResource_keydown_escape_HostBindingHandler() { return ctx.onEscapeKey(); }, i0.ɵɵresolveDocument);
1965
- } }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 34, vars: 29, consts: [["categoryNodeTemplate", ""], ["entityInput", ""], ["Title", "Lists", "Icon", "fa-solid fa-list-check"], ["meta", ""], ["Label", "lists", 3, "Count", "Total"], ["actions", ""], [3, "ClearAllRequested", "ActiveCount", "ShowClearAll"], [3, "ValuesChange", "Reset", "Fields", "Values"], [3, "KeyChange", "Options", "ActiveKey"], [1, "favorite-filter-toggle", 3, "click", "title"], ["mjButton", "", "variant", "primary", "size", "sm", 3, "click"], [1, "fa-solid", "fa-plus"], ["toolbar", ""], ["Placeholder", "Search lists...", 3, "ValueChange", "Value"], [1, "tag-filter-row"], [1, "loading-container"], [1, "empty-state"], [1, "empty-state", "search-empty"], [1, "browse-content"], [1, "context-menu-overlay"], [1, "context-menu", 3, "top", "left"], [1, "modal-overlay"], [1, "modal-dialog"], [1, "modal-dialog", "confirm-dialog"], [3, "config", "visible"], [3, "Visible", "Title", "MinWidth", "Width", "Height"], [1, "entity-dropdown-portal", 3, "top", "left", "width", "dropdown-above"], [1, "tag-filter-row__label"], [1, "fa-solid", "fa-tag"], ["type", "button", 1, "tag-filter-chip"], ["type", "button", 1, "tag-filter-row__clear", 3, "click"], ["type", "button", 1, "tag-filter-chip", 3, "click"], [1, "fa-solid", "fa-xmark"], ["text", "Loading lists...", "size", "medium"], [1, "empty-state-icon-wrapper"], [1, "icon-bg"], [1, "fa-solid", "fa-list-check"], [1, "empty-state-features"], [1, "feature-item"], [1, "fa-solid", "fa-check-circle"], [1, "btn-create-large", 3, "click"], [1, "empty-state-icon-wrapper", "search"], [1, "fa-solid", "fa-filter-circle-xmark"], [1, "empty-hint"], [1, "btn-clear", 3, "click"], [1, "results-header"], [1, "result-count"], [1, "sort-options"], [1, "filter-select", "sort-select", 3, "ngModelChange", "ngModel"], [3, "value"], [1, "lists-table"], ["role", "list", "aria-label", "Lists", 1, "lists-grid"], [1, "category-tree"], ["role", "grid", "aria-label", "Lists table"], ["scope", "col", 1, "col-name"], ["scope", "col", 1, "col-entity"], ["scope", "col", 1, "col-items"], ["scope", "col", 1, "col-sharing"], ["scope", "col", 1, "col-owner"], ["scope", "col", 1, "col-updated"], ["scope", "col", 1, "col-actions"], [1, "sr-only"], ["tabindex", "0", "role", "row", 1, "list-row"], ["tabindex", "0", "role", "row", 1, "list-row", 3, "click", "keydown.enter"], ["role", "gridcell", 1, "col-name"], [1, "name-cell"], ["aria-hidden", "true", 1, "list-icon"], [1, "name-content"], [1, "list-name"], [1, "list-desc"], ["role", "gridcell", 1, "col-entity"], [1, "entity-badge"], ["role", "gridcell", 1, "col-items"], ["role", "gridcell", 1, "col-sharing"], [1, "sharing-private"], ["role", "gridcell", 1, "col-owner"], [1, "owner-name"], ["role", "gridcell", 1, "col-updated"], ["role", "gridcell", 1, "col-actions"], ["mjButton", "", "variant", "flat", "size", "sm", "title", "More options", 3, "click"], ["aria-hidden", "true", 1, "fa-solid", "fa-ellipsis-v"], [1, "sharing-indicator"], [1, "fa-solid", "fa-share-nodes"], [1, "share-count"], [1, "fa-solid", "fa-lock"], ["tabindex", "0", "role", "listitem", 1, "list-card"], ["tabindex", "0", "role", "listitem", 1, "list-card", 3, "click", "keydown.enter"], [1, "card-header"], ["aria-hidden", "true", 1, "card-icon"], [1, "favorite-btn", 3, "click", "title"], [1, "card-menu"], [1, "menu-btn", 3, "click"], [1, "card-body"], [1, "card-title"], [1, "card-description"], [1, "card-meta"], [1, "meta-item"], [1, "fa-solid", "fa-database"], [1, "fa-solid", "fa-hashtag"], [1, "card-tags", 3, "click"], ["EntityName", "MJ: Lists", 3, "TagClicked", "Provider", "RecordID", "Editable", "MaxDisplay"], [1, "card-footer"], [1, "owner-tag"], [1, "fa-solid", "fa-user"], [1, "card-footer-right"], [1, "date-info"], [1, "sharing-badge", 3, "title"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "category-section"], [1, "category-header"], [1, "category-header", "uncategorized"], ["role", "list", 1, "category-lists"], [1, "category-header", 3, "click"], [1, "fa-solid", "fa-folder"], [1, "category-name"], [1, "category-count"], [1, "category-header", "uncategorized", 3, "click"], [1, "fa-solid", "fa-inbox"], ["tabindex", "0", "role", "listitem", 1, "list-row", "hierarchy-row"], ["tabindex", "0", "role", "listitem", 1, "list-row", "hierarchy-row", 3, "click", "keydown.enter"], [1, "list-info"], [1, "list-meta"], [1, "list-actions"], ["mjButton", "", "variant", "flat", "size", "sm", 3, "click"], [1, "context-menu-overlay", 3, "click"], [1, "context-menu"], [1, "menu-item"], [1, "menu-item", 3, "click"], [1, "fa-solid", "fa-copy"], [1, "menu-viewer-hint"], [1, "fa-solid", "fa-pen"], [1, "menu-divider"], [1, "menu-item", "danger", 3, "click"], [1, "fa-solid", "fa-trash"], [1, "fa-solid", "fa-eye"], [1, "modal-overlay", 3, "click"], [1, "modal-header"], [1, "modal-close", 3, "click"], [1, "fa-solid", "fa-times"], [1, "modal-body"], [1, "form-group"], ["type", "text", "placeholder", "Enter list name", 1, "form-input", 3, "ngModelChange", "ngModel"], ["placeholder", "Optional description", "rows", "3", 1, "form-input", 3, "ngModelChange", "ngModel"], [1, "form-input", 3, "ngModelChange", "ngModel"], [3, "ngValue"], [1, "modal-footer"], [1, "btn-primary", 3, "click", "disabled"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "btn-secondary", 3, "click", "disabled"], [1, "custom-select-wrapper"], ["type", "text", "placeholder", "Search and select an entity", 1, "form-input", 3, "ngModelChange", "focus", "ngModel"], ["type", "text", "disabled", "", 1, "form-input", 3, "value"], [1, "warning-text"], [1, "btn-danger", 3, "click", "disabled"], [3, "complete", "cancel", "manageInvitations", "viewAuditLog", "config", "visible"], [3, "Close", "Visible", "Title", "MinWidth", "Width", "Height"], [1, "dialog-content"], [3, "Provider", "ListID", "ListName"], ["mjButton", "", "variant", "outline", 3, "click"], [3, "Provider", "ListID"], [1, "entity-dropdown-portal"], [1, "entity-dropdown-content"], [1, "dropdown-item"], [1, "dropdown-empty"], [1, "dropdown-item", 3, "mousedown"]], template: function ListsBrowseResource_Template(rf, ctx) { if (rf & 1) {
1964
+ } }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 31, vars: 23, consts: [["categoryNodeTemplate", ""], ["entityInput", ""], ["Title", "Lists", "Icon", "fa-solid fa-list-check"], ["meta", ""], ["Label", "lists", 3, "Count", "Total"], ["actions", ""], ["mjButton", "", "variant", "primary", "size", "sm", 3, "click"], [1, "fa-solid", "fa-plus"], [1, "action-btn-label"], ["toolbar", ""], ["Placeholder", "Search lists...", 3, "ValueChange", "Value"], ["Label", "Filters", "Icon", "fa-solid fa-filter", 3, "ClearAllRequested", "ActiveCount", "ShowClearAll"], [3, "ValuesChange", "Reset", "Fields", "Values"], [3, "KeyChange", "Options", "ActiveKey"], [1, "loading-container"], [1, "empty-state"], [1, "empty-state", "search-empty"], [1, "browse-content"], [1, "context-menu-overlay"], [1, "context-menu", 3, "top", "left"], [1, "modal-overlay"], [1, "modal-dialog"], [1, "modal-dialog", "confirm-dialog"], [3, "config", "visible"], [3, "Visible", "Title", "MinWidth", "Width", "Height"], [1, "entity-dropdown-portal", 3, "top", "left", "width", "dropdown-above"], ["text", "Loading lists...", "size", "medium"], [1, "empty-state-icon-wrapper"], [1, "icon-bg"], [1, "fa-solid", "fa-list-check"], [1, "empty-state-features"], [1, "feature-item"], [1, "fa-solid", "fa-check-circle"], [1, "btn-create-large", 3, "click"], [1, "empty-state-icon-wrapper", "search"], [1, "fa-solid", "fa-filter-circle-xmark"], [1, "empty-hint"], [1, "btn-clear", 3, "click"], [1, "results-header"], [1, "result-count"], [1, "sort-options"], [1, "filter-select", "sort-select", 3, "ngModelChange", "ngModel"], [3, "value"], [1, "lists-table"], ["role", "list", "aria-label", "Lists", 1, "lists-grid"], [1, "category-tree"], ["role", "grid", "aria-label", "Lists table"], ["scope", "col", 1, "col-name"], ["scope", "col", 1, "col-entity"], ["scope", "col", 1, "col-items"], ["scope", "col", 1, "col-sharing"], ["scope", "col", 1, "col-owner"], ["scope", "col", 1, "col-updated"], ["scope", "col", 1, "col-actions"], [1, "sr-only"], ["tabindex", "0", "role", "row", 1, "list-row"], ["tabindex", "0", "role", "row", 1, "list-row", 3, "click", "keydown.enter"], ["role", "gridcell", 1, "col-name"], [1, "name-cell"], ["aria-hidden", "true", 1, "list-icon"], [1, "name-content"], [1, "list-name"], [1, "list-desc"], ["role", "gridcell", 1, "col-entity"], [1, "entity-badge"], ["role", "gridcell", 1, "col-items"], ["role", "gridcell", 1, "col-sharing"], [1, "sharing-private"], ["role", "gridcell", 1, "col-owner"], [1, "owner-name"], ["role", "gridcell", 1, "col-updated"], ["role", "gridcell", 1, "col-actions"], ["mjButton", "", "variant", "flat", "size", "sm", "title", "More options", 3, "click"], ["aria-hidden", "true", 1, "fa-solid", "fa-ellipsis-v"], [1, "sharing-indicator"], [1, "fa-solid", "fa-share-nodes"], [1, "share-count"], [1, "fa-solid", "fa-lock"], ["tabindex", "0", "role", "listitem", 1, "list-card"], ["tabindex", "0", "role", "listitem", 1, "list-card", 3, "click", "keydown.enter"], [1, "card-header"], ["aria-hidden", "true", 1, "card-icon"], [1, "favorite-btn", 3, "click", "title"], [1, "card-menu"], [1, "menu-btn", 3, "click"], [1, "card-body"], [1, "card-title"], [1, "card-description"], [1, "card-meta"], [1, "meta-item"], [1, "fa-solid", "fa-database"], [1, "fa-solid", "fa-hashtag"], [1, "card-tags", 3, "click"], ["EntityName", "MJ: Lists", 3, "TagClicked", "Provider", "RecordID", "Editable", "MaxDisplay"], [1, "card-footer"], [1, "owner-tag"], [1, "fa-solid", "fa-user"], [1, "card-footer-right"], [1, "date-info"], [1, "sharing-badge", 3, "title"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "category-section"], [1, "category-header"], [1, "category-header", "uncategorized"], ["role", "list", 1, "category-lists"], [1, "category-header", 3, "click"], [1, "fa-solid", "fa-folder"], [1, "category-name"], [1, "category-count"], [1, "category-header", "uncategorized", 3, "click"], [1, "fa-solid", "fa-inbox"], ["tabindex", "0", "role", "listitem", 1, "list-row", "hierarchy-row"], ["tabindex", "0", "role", "listitem", 1, "list-row", "hierarchy-row", 3, "click", "keydown.enter"], [1, "list-info"], [1, "list-meta"], [1, "list-actions"], ["mjButton", "", "variant", "flat", "size", "sm", 3, "click"], [1, "context-menu-overlay", 3, "click"], [1, "context-menu"], [1, "menu-item"], [1, "menu-item", 3, "click"], [1, "fa-solid", "fa-copy"], [1, "menu-viewer-hint"], [1, "fa-solid", "fa-pen"], [1, "menu-divider"], [1, "menu-item", "danger", 3, "click"], [1, "fa-solid", "fa-trash"], [1, "fa-solid", "fa-eye"], [1, "modal-overlay", 3, "click"], [1, "modal-header"], [1, "modal-close", 3, "click"], [1, "fa-solid", "fa-times"], [1, "modal-body"], [1, "form-group"], ["type", "text", "placeholder", "Enter list name", 1, "form-input", 3, "ngModelChange", "ngModel"], ["placeholder", "Optional description", "rows", "3", 1, "form-input", 3, "ngModelChange", "ngModel"], [1, "form-input", 3, "ngModelChange", "ngModel"], [3, "ngValue"], [1, "modal-footer"], [1, "btn-primary", 3, "click", "disabled"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "btn-secondary", 3, "click", "disabled"], [1, "custom-select-wrapper"], ["type", "text", "placeholder", "Search and select an entity", 1, "form-input", 3, "ngModelChange", "focus", "ngModel"], ["type", "text", "disabled", "", 1, "form-input", 3, "value"], [1, "warning-text"], [1, "btn-danger", 3, "click", "disabled"], [3, "complete", "cancel", "manageInvitations", "viewAuditLog", "config", "visible"], [3, "Close", "Visible", "Title", "MinWidth", "Width", "Height"], [1, "dialog-content"], [3, "Provider", "ListID", "ListName"], ["mjButton", "", "variant", "outline", 3, "click"], [3, "Provider", "ListID"], [1, "entity-dropdown-portal"], [1, "entity-dropdown-content"], [1, "dropdown-item"], [1, "dropdown-empty"], [1, "dropdown-item", 3, "mousedown"]], template: function ListsBrowseResource_Template(rf, ctx) { if (rf & 1) {
1966
1965
  const _r1 = i0.ɵɵgetCurrentView();
1967
1966
  i0.ɵɵelementStart(0, "mj-page-layout")(1, "mj-page-header", 2)(2, "div", 3);
1968
1967
  i0.ɵɵelement(3, "mj-stat-badge", 4);
1969
1968
  i0.ɵɵelementEnd();
1970
- i0.ɵɵelementStart(4, "div", 5)(5, "mj-filter-popover", 6);
1971
- i0.ɵɵlistener("ClearAllRequested", function ListsBrowseResource_Template_mj_filter_popover_ClearAllRequested_5_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.resetPopoverFilters()); });
1972
- i0.ɵɵelementStart(6, "mj-filter-panel", 7);
1973
- i0.ɵɵlistener("ValuesChange", function ListsBrowseResource_Template_mj_filter_panel_ValuesChange_6_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onFilterValuesChange($event)); })("Reset", function ListsBrowseResource_Template_mj_filter_panel_Reset_6_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.resetPopoverFilters()); });
1974
- i0.ɵɵelementEnd()();
1975
- i0.ɵɵelementStart(7, "mj-view-toggle", 8);
1976
- i0.ɵɵlistener("KeyChange", function ListsBrowseResource_Template_mj_view_toggle_KeyChange_7_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.setViewMode($event)); });
1977
- i0.ɵɵelementEnd();
1978
- i0.ɵɵelementStart(8, "button", 9);
1979
- i0.ɵɵlistener("click", function ListsBrowseResource_Template_button_click_8_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleShowOnlyFavorites()); });
1980
- i0.ɵɵelement(9, "i");
1981
- i0.ɵɵtext(10, " Favorites ");
1969
+ i0.ɵɵelementStart(4, "div", 5)(5, "button", 6);
1970
+ i0.ɵɵlistener("click", function ListsBrowseResource_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.createNewList()); });
1971
+ i0.ɵɵelement(6, "i", 7);
1972
+ i0.ɵɵelementStart(7, "span", 8);
1973
+ i0.ɵɵtext(8, "New List");
1974
+ i0.ɵɵelementEnd()()();
1975
+ i0.ɵɵelementStart(9, "div", 9)(10, "mj-page-search", 10);
1976
+ i0.ɵɵlistener("ValueChange", function ListsBrowseResource_Template_mj_page_search_ValueChange_10_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onSearchChange($event)); });
1982
1977
  i0.ɵɵelementEnd();
1983
- i0.ɵɵelementStart(11, "button", 10);
1984
- i0.ɵɵlistener("click", function ListsBrowseResource_Template_button_click_11_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.createNewList()); });
1985
- i0.ɵɵelement(12, "i", 11);
1986
- i0.ɵɵtext(13, " New List ");
1978
+ i0.ɵɵelementStart(11, "mj-filter-popover", 11);
1979
+ i0.ɵɵlistener("ClearAllRequested", function ListsBrowseResource_Template_mj_filter_popover_ClearAllRequested_11_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.clearAllAppliedFilters()); });
1980
+ i0.ɵɵelementStart(12, "mj-filter-panel", 12);
1981
+ i0.ɵɵlistener("ValuesChange", function ListsBrowseResource_Template_mj_filter_panel_ValuesChange_12_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onFilterValuesChange($event)); })("Reset", function ListsBrowseResource_Template_mj_filter_panel_Reset_12_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.resetPopoverFilters()); });
1987
1982
  i0.ɵɵelementEnd()();
1988
- i0.ɵɵelementStart(14, "div", 12)(15, "mj-page-search", 13);
1989
- i0.ɵɵlistener("ValueChange", function ListsBrowseResource_Template_mj_page_search_ValueChange_15_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onSearchChange($event)); });
1983
+ i0.ɵɵelementStart(13, "mj-view-toggle", 13);
1984
+ i0.ɵɵlistener("KeyChange", function ListsBrowseResource_Template_mj_view_toggle_KeyChange_13_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.setViewMode($event)); });
1990
1985
  i0.ɵɵelementEnd()()();
1991
- i0.ɵɵelementStart(16, "mj-page-body");
1992
- i0.ɵɵconditionalCreate(17, ListsBrowseResource_Conditional_17_Template, 8, 0, "div", 14);
1993
- i0.ɵɵconditionalCreate(18, ListsBrowseResource_Conditional_18_Template, 2, 0, "div", 15);
1994
- i0.ɵɵconditionalCreate(19, ListsBrowseResource_Conditional_19_Template, 24, 0, "div", 16);
1995
- i0.ɵɵconditionalCreate(20, ListsBrowseResource_Conditional_20_Template, 11, 0, "div", 17);
1996
- i0.ɵɵconditionalCreate(21, ListsBrowseResource_Conditional_21_Template, 13, 6, "div", 18);
1997
- i0.ɵɵtemplate(22, ListsBrowseResource_ng_template_22_Template, 5, 6, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
1998
- i0.ɵɵconditionalCreate(24, ListsBrowseResource_Conditional_24_Template, 1, 0, "div", 19);
1999
- i0.ɵɵconditionalCreate(25, ListsBrowseResource_Conditional_25_Template, 8, 8, "div", 20);
1986
+ i0.ɵɵelementStart(14, "mj-page-body");
1987
+ i0.ɵɵconditionalCreate(15, ListsBrowseResource_Conditional_15_Template, 2, 0, "div", 14);
1988
+ i0.ɵɵconditionalCreate(16, ListsBrowseResource_Conditional_16_Template, 24, 0, "div", 15);
1989
+ i0.ɵɵconditionalCreate(17, ListsBrowseResource_Conditional_17_Template, 11, 0, "div", 16);
1990
+ i0.ɵɵconditionalCreate(18, ListsBrowseResource_Conditional_18_Template, 13, 6, "div", 17);
1991
+ i0.ɵɵtemplate(19, ListsBrowseResource_ng_template_19_Template, 5, 6, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
1992
+ i0.ɵɵconditionalCreate(21, ListsBrowseResource_Conditional_21_Template, 1, 0, "div", 18);
1993
+ i0.ɵɵconditionalCreate(22, ListsBrowseResource_Conditional_22_Template, 8, 8, "div", 19);
2000
1994
  i0.ɵɵelementEnd();
2001
- i0.ɵɵconditionalCreate(26, ListsBrowseResource_Conditional_26_Template, 1, 0, "div", 21);
2002
- i0.ɵɵconditionalCreate(27, ListsBrowseResource_Conditional_27_Template, 31, 11, "div", 22);
2003
- i0.ɵɵconditionalCreate(28, ListsBrowseResource_Conditional_28_Template, 1, 0, "div", 21);
2004
- i0.ɵɵconditionalCreate(29, ListsBrowseResource_Conditional_29_Template, 20, 5, "div", 23);
2005
- i0.ɵɵconditionalCreate(30, ListsBrowseResource_Conditional_30_Template, 1, 2, "mj-list-share-dialog", 24);
2006
- i0.ɵɵconditionalCreate(31, ListsBrowseResource_Conditional_31_Template, 6, 8, "mj-dialog", 25);
2007
- i0.ɵɵconditionalCreate(32, ListsBrowseResource_Conditional_32_Template, 6, 7, "mj-dialog", 25);
2008
- i0.ɵɵconditionalCreate(33, ListsBrowseResource_Conditional_33_Template, 5, 11, "div", 26);
1995
+ i0.ɵɵconditionalCreate(23, ListsBrowseResource_Conditional_23_Template, 1, 0, "div", 20);
1996
+ i0.ɵɵconditionalCreate(24, ListsBrowseResource_Conditional_24_Template, 31, 11, "div", 21);
1997
+ i0.ɵɵconditionalCreate(25, ListsBrowseResource_Conditional_25_Template, 1, 0, "div", 20);
1998
+ i0.ɵɵconditionalCreate(26, ListsBrowseResource_Conditional_26_Template, 20, 5, "div", 22);
1999
+ i0.ɵɵconditionalCreate(27, ListsBrowseResource_Conditional_27_Template, 1, 2, "mj-list-share-dialog", 23);
2000
+ i0.ɵɵconditionalCreate(28, ListsBrowseResource_Conditional_28_Template, 6, 8, "mj-dialog", 24);
2001
+ i0.ɵɵconditionalCreate(29, ListsBrowseResource_Conditional_29_Template, 6, 7, "mj-dialog", 24);
2002
+ i0.ɵɵconditionalCreate(30, ListsBrowseResource_Conditional_30_Template, 5, 11, "div", 25);
2009
2003
  i0.ɵɵelementEnd();
2010
2004
  } if (rf & 2) {
2011
2005
  i0.ɵɵadvance(3);
2012
2006
  i0.ɵɵproperty("Count", ctx.filteredLists.length)("Total", ctx.allLists.length);
2013
- i0.ɵɵadvance(2);
2014
- i0.ɵɵproperty("ActiveCount", ctx.ActiveFilterCount)("ShowClearAll", ctx.ActiveFilterCount > 0);
2007
+ i0.ɵɵadvance(7);
2008
+ i0.ɵɵproperty("Value", ctx.searchTerm);
2009
+ i0.ɵɵadvance();
2010
+ i0.ɵɵproperty("ActiveCount", ctx.TotalActiveFilterCount)("ShowClearAll", ctx.TotalActiveFilterCount > 0);
2015
2011
  i0.ɵɵadvance();
2016
2012
  i0.ɵɵproperty("Fields", ctx.listFilterFields)("Values", ctx.listFilterValues);
2017
2013
  i0.ɵɵadvance();
2018
2014
  i0.ɵɵproperty("Options", ctx.listViewOptions)("ActiveKey", ctx.viewMode);
2019
- i0.ɵɵadvance();
2020
- i0.ɵɵclassProp("favorite-filter-toggle--active", ctx.showOnlyFavorites);
2021
- i0.ɵɵproperty("title", ctx.showOnlyFavorites ? "Showing favorites only" : "Show all lists");
2022
- i0.ɵɵadvance();
2023
- i0.ɵɵclassMap(ctx.showOnlyFavorites ? "fa-solid fa-star" : "fa-regular fa-star");
2024
- i0.ɵɵadvance(6);
2025
- i0.ɵɵproperty("Value", ctx.searchTerm);
2026
2015
  i0.ɵɵadvance(2);
2027
- i0.ɵɵconditional(ctx.tagFilters.length > 0 ? 17 : -1);
2028
- i0.ɵɵadvance();
2029
- i0.ɵɵconditional(ctx.isLoading ? 18 : -1);
2016
+ i0.ɵɵconditional(ctx.isLoading ? 15 : -1);
2030
2017
  i0.ɵɵadvance();
2031
- i0.ɵɵconditional(!ctx.isLoading && ctx.allLists.length === 0 ? 19 : -1);
2018
+ i0.ɵɵconditional(!ctx.isLoading && ctx.allLists.length === 0 ? 16 : -1);
2032
2019
  i0.ɵɵadvance();
2033
- i0.ɵɵconditional(!ctx.isLoading && ctx.allLists.length > 0 && ctx.filteredLists.length === 0 ? 20 : -1);
2020
+ i0.ɵɵconditional(!ctx.isLoading && ctx.allLists.length > 0 && ctx.filteredLists.length === 0 ? 17 : -1);
2034
2021
  i0.ɵɵadvance();
2035
- i0.ɵɵconditional(!ctx.isLoading && ctx.filteredLists.length > 0 ? 21 : -1);
2022
+ i0.ɵɵconditional(!ctx.isLoading && ctx.filteredLists.length > 0 ? 18 : -1);
2036
2023
  i0.ɵɵadvance(3);
2037
- i0.ɵɵconditional(ctx.showContextMenu ? 24 : -1);
2024
+ i0.ɵɵconditional(ctx.showContextMenu ? 21 : -1);
2038
2025
  i0.ɵɵadvance();
2039
- i0.ɵɵconditional(ctx.showContextMenu ? 25 : -1);
2026
+ i0.ɵɵconditional(ctx.showContextMenu ? 22 : -1);
2040
2027
  i0.ɵɵadvance();
2041
- i0.ɵɵconditional(ctx.showCreateDialog ? 26 : -1);
2028
+ i0.ɵɵconditional(ctx.showCreateDialog ? 23 : -1);
2042
2029
  i0.ɵɵadvance();
2043
- i0.ɵɵconditional(ctx.showCreateDialog ? 27 : -1);
2030
+ i0.ɵɵconditional(ctx.showCreateDialog ? 24 : -1);
2044
2031
  i0.ɵɵadvance();
2045
- i0.ɵɵconditional(ctx.showDeleteConfirm ? 28 : -1);
2032
+ i0.ɵɵconditional(ctx.showDeleteConfirm ? 25 : -1);
2046
2033
  i0.ɵɵadvance();
2047
- i0.ɵɵconditional(ctx.showDeleteConfirm ? 29 : -1);
2034
+ i0.ɵɵconditional(ctx.showDeleteConfirm ? 26 : -1);
2048
2035
  i0.ɵɵadvance();
2049
- i0.ɵɵconditional(ctx.shareDialogConfig ? 30 : -1);
2036
+ i0.ɵɵconditional(ctx.shareDialogConfig ? 27 : -1);
2050
2037
  i0.ɵɵadvance();
2051
- i0.ɵɵconditional(ctx.showInvitationsDialog && ctx.activeShareListId ? 31 : -1);
2038
+ i0.ɵɵconditional(ctx.showInvitationsDialog && ctx.activeShareListId ? 28 : -1);
2052
2039
  i0.ɵɵadvance();
2053
- i0.ɵɵconditional(ctx.showAuditLogDialog && ctx.activeShareListId ? 32 : -1);
2040
+ i0.ɵɵconditional(ctx.showAuditLogDialog && ctx.activeShareListId ? 29 : -1);
2054
2041
  i0.ɵɵadvance();
2055
- i0.ɵɵconditional(ctx.showEntityDropdown && !ctx.editingList ? 33 : -1);
2056
- } }, dependencies: [i4.NgTemplateOutlet, i5.NgSelectOption, i5.ɵNgSelectMultipleOption, i5.DefaultValueAccessor, i5.SelectControlValueAccessor, i5.NgControlStatus, i5.NgModel, i6.MJButtonDirective, i6.MJDialogComponent, i6.MJDialogActionsComponent, i6.MJPageLayoutComponent, i6.MJPageHeaderComponent, i6.MJPageBodyComponent, i6.MJPageSearchComponent, i6.MJFilterPopoverComponent, i6.MJFilterPanelComponent, i6.MJViewToggleComponent, i6.MJStatBadgeComponent, i7.LoadingComponent, i3.ListAuditLogComponent, i3.ListInvitationsComponent, i3.ListShareDialogComponent, i3.TagChipsComponent], styles: ["\n :host {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n }\n\n .lists-browse-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: var(--mj-bg-surface);\n overflow: hidden;\n }\n\n /* Header */\n .browse-header {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 16px 24px;\n background: var(--mj-bg-surface-card);\n border-bottom: 1px solid var(--mj-border-default);\n flex-shrink: 0;\n }\n\n .header-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .header-title {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n\n .header-title i {\n font-size: 24px;\n color: var(--mj-brand-primary);\n }\n\n .header-title h2 {\n margin: 0;\n font-size: 20px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .header-actions {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n }\n\n .search-box {\n position: relative;\n display: flex;\n align-items: center;\n flex: 1;\n min-width: 200px;\n max-width: 300px;\n }\n\n .search-box i.fa-search {\n position: absolute;\n left: 12px;\n color: var(--mj-text-muted);\n }\n\n .search-box input {\n padding: 8px 36px;\n border: 1px solid var(--mj-border-default);\n border-radius: 20px;\n font-size: 14px;\n width: 100%;\n transition: border-color 0.2s, box-shadow 0.2s;\n }\n\n .search-box input:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .clear-search {\n position: absolute;\n right: 8px;\n background: none;\n border: none;\n color: var(--mj-text-muted);\n cursor: pointer;\n }\n\n .filter-group {\n display: flex;\n align-items: center;\n gap: 6px;\n }\n\n .filter-group label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n }\n\n .filter-select {\n padding: 8px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n background: var(--mj-bg-surface-card);\n cursor: pointer;\n min-width: 120px;\n }\n\n .filter-select:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .sort-select {\n min-width: 140px;\n }\n\n .view-toggle-group {\n display: flex;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n overflow: hidden;\n }\n\n .view-toggle {\n padding: 8px 12px;\n background: var(--mj-bg-surface-card);\n border: none;\n border-right: 1px solid var(--mj-border-default);\n color: var(--mj-text-secondary);\n cursor: pointer;\n transition: all 0.2s;\n }\n\n .view-toggle:last-child {\n border-right: none;\n }\n\n .view-toggle:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .view-toggle.active {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n }\n\n .btn-create {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 16px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-create:hover {\n background: var(--mj-brand-primary-hover);\n }\n\n /* Loading */\n .loading-container {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 1;\n }\n\n /* Empty State */\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n flex: 1;\n padding: 48px 40px;\n text-align: center;\n max-width: 480px;\n margin: 0 auto;\n }\n\n .empty-state-icon-wrapper {\n position: relative;\n margin-bottom: 24px;\n }\n\n .empty-state-icon-wrapper .icon-bg {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 120px;\n height: 120px;\n border-radius: 50%;\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n }\n\n .empty-state-icon-wrapper > i {\n position: relative;\n font-size: 56px;\n color: var(--mj-brand-primary);\n z-index: 1;\n }\n\n .empty-state-icon-wrapper.search > i {\n font-size: 48px;\n color: var(--mj-text-disabled);\n }\n\n .empty-state h3 {\n margin: 0 0 12px;\n font-size: 22px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .empty-state p {\n margin: 0 0 8px;\n color: var(--mj-text-secondary);\n font-size: 15px;\n line-height: 1.5;\n }\n\n .empty-state p:last-of-type {\n margin-bottom: 24px;\n }\n\n .empty-hint {\n color: var(--mj-text-muted) !important;\n font-size: 13px !important;\n }\n\n .empty-state-features {\n display: flex;\n flex-direction: column;\n gap: 8px;\n margin-bottom: 28px;\n text-align: left;\n }\n\n .feature-item {\n display: flex;\n align-items: center;\n gap: 10px;\n font-size: 14px;\n color: var(--mj-text-secondary);\n }\n\n .feature-item i {\n font-size: 14px !important;\n color: var(--mj-status-success) !important;\n }\n\n .btn-create-large {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 14px 28px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 8px;\n font-size: 15px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s;\n box-shadow: 0 2px 8px color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n\n .btn-create-large:hover {\n background: var(--mj-brand-primary-hover);\n transform: translateY(-1px);\n box-shadow: 0 4px 12px color-mix(in srgb, var(--mj-brand-primary) 40%, transparent);\n }\n\n .btn-clear {\n padding: 10px 20px;\n background: var(--mj-bg-surface-sunken);\n border: none;\n border-radius: 6px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-clear:hover {\n background: var(--mj-border-default);\n }\n\n /* Content */\n .browse-content {\n flex: 1;\n overflow-y: auto;\n padding: 16px 24px;\n }\n\n .results-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n }\n\n .result-count {\n font-size: 14px;\n color: var(--mj-text-secondary);\n }\n\n .sort-options {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .sort-options label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n }\n\n /* Table View */\n .lists-table {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n overflow: hidden;\n box-shadow: var(--mj-shadow-sm);\n }\n\n .lists-table table {\n width: 100%;\n border-collapse: collapse;\n }\n\n .lists-table th {\n text-align: left;\n padding: 12px 16px;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n background: var(--mj-bg-surface-sunken);\n border-bottom: 1px solid var(--mj-border-default);\n }\n\n .lists-table td {\n padding: 12px 16px;\n border-bottom: 1px solid var(--mj-border-default);\n font-size: 14px;\n color: var(--mj-text-primary);\n }\n\n .list-row {\n cursor: pointer;\n transition: background 0.15s;\n outline: none;\n }\n\n .list-row:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .list-row:focus {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .list-row:focus-visible {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n box-shadow: inset 3px 0 0 var(--mj-brand-primary);\n }\n\n .list-row:last-child td {\n border-bottom: none;\n }\n\n .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n }\n\n .col-name { width: 30%; }\n .col-entity { width: 15%; }\n .col-items { width: 8%; text-align: center; }\n .col-sharing { width: 8%; text-align: center; }\n .col-owner { width: 14%; }\n .col-updated { width: 15%; }\n .col-actions { width: 10%; text-align: right; }\n\n /* Sharing indicators */\n .sharing-indicator {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: var(--mj-brand-primary);\n font-size: 13px;\n }\n\n .sharing-indicator i {\n font-size: 14px;\n }\n\n .share-count {\n font-weight: 500;\n }\n\n .sharing-private {\n color: var(--mj-text-muted);\n font-size: 13px;\n }\n\n .sharing-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n border-radius: 50%;\n color: var(--mj-brand-primary);\n font-size: 11px;\n }\n\n .card-footer-right {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .name-cell {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n\n .list-icon {\n width: 36px;\n height: 36px;\n border-radius: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mj-text-inverse);\n font-size: 14px;\n flex-shrink: 0;\n }\n\n .name-content {\n display: flex;\n flex-direction: column;\n min-width: 0;\n }\n\n .list-name {\n font-weight: 500;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .list-desc {\n font-size: 12px;\n color: var(--mj-text-muted);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .entity-badge {\n display: inline-block;\n padding: 2px 8px;\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n border-radius: 4px;\n font-size: 12px;\n color: var(--mj-brand-primary-hover);\n }\n\n .owner-name {\n color: var(--mj-text-secondary);\n }\n\n .owner-name.is-me {\n color: var(--mj-brand-primary);\n font-weight: 500;\n }\n\n .action-btn {\n background: none;\n border: none;\n padding: 6px 10px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n transition: all 0.15s;\n }\n\n .action-btn:hover {\n background: var(--mj-border-default);\n color: var(--mj-text-secondary);\n }\n\n /* Card View */\n .lists-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n gap: 16px;\n }\n\n .list-card {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n box-shadow: var(--mj-shadow-sm);\n overflow: hidden;\n cursor: pointer;\n transition: transform 0.2s, box-shadow 0.2s, outline 0.1s;\n outline: 2px solid transparent;\n }\n\n .list-card:hover {\n transform: translateY(-2px);\n box-shadow: var(--mj-shadow-md);\n }\n\n .list-card:focus {\n outline: 2px solid var(--mj-brand-primary);\n outline-offset: 2px;\n }\n\n .list-card:focus:not(:focus-visible) {\n outline: none;\n }\n\n .list-card:focus-visible {\n outline: 2px solid var(--mj-brand-primary);\n outline-offset: 2px;\n }\n\n .card-header {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n padding: 16px 16px 0;\n }\n\n .card-icon {\n width: 40px;\n height: 40px;\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mj-text-inverse);\n font-size: 18px;\n }\n\n .menu-btn {\n background: none;\n border: none;\n padding: 4px 8px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n }\n\n .menu-btn:hover {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n }\n\n .card-body {\n padding: 12px 16px;\n }\n\n .card-title {\n margin: 0 0 4px;\n font-size: 16px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .card-description {\n margin: 0 0 12px;\n font-size: 13px;\n color: var(--mj-text-secondary);\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n }\n\n .card-meta {\n display: flex;\n gap: 16px;\n }\n\n .meta-item {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n /* Tag chips on a card. Stop-propagation is set on the wrapper so\n clicks on chips don't open the underlying list. */\n .card-tags {\n margin-top: 8px;\n }\n\n /* Favorite star on cards (Phase 5.3). */\n .favorite-btn {\n background: none;\n border: none;\n padding: 4px;\n margin: -4px;\n cursor: pointer;\n color: var(--mj-text-muted);\n font-size: 14px;\n border-radius: 4px;\n transition: color 0.12s ease, background 0.12s ease;\n }\n\n .favorite-btn:hover {\n background: var(--mj-bg-surface-card);\n color: var(--mj-status-warning);\n }\n\n .favorite-btn--active {\n color: var(--mj-status-warning);\n }\n\n /* Favorites-only toggle in the toolbar. */\n .favorite-filter-toggle {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 6px 12px;\n background: none;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 12.5px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n }\n\n .favorite-filter-toggle:hover {\n border-color: var(--mj-status-warning);\n color: var(--mj-status-warning);\n }\n\n .favorite-filter-toggle--active {\n background: color-mix(in srgb, var(--mj-status-warning) 12%, var(--mj-bg-surface));\n border-color: var(--mj-status-warning);\n color: var(--mj-status-warning);\n font-weight: 600;\n }\n\n /* Active-tag filter row above the grid (Phase 4.3). */\n .tag-filter-row {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 8px;\n padding: 10px 12px;\n margin-bottom: 12px;\n background: var(--mj-bg-surface-sunken);\n border: 1px dashed var(--mj-border-default);\n border-radius: 8px;\n font-size: 12.5px;\n }\n\n .tag-filter-row__label {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n color: var(--mj-text-muted);\n font-weight: 500;\n }\n\n .tag-filter-chip {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 2px 10px;\n border-radius: 999px;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n border: 1px solid var(--mj-brand-primary);\n font-size: 11.5px;\n cursor: pointer;\n }\n\n .tag-filter-chip:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 20%, var(--mj-bg-surface));\n }\n\n .tag-filter-row__clear {\n background: none;\n border: none;\n color: var(--mj-text-link);\n font-size: 11.5px;\n cursor: pointer;\n margin-left: auto;\n }\n\n .tag-filter-row__clear:hover {\n text-decoration: underline;\n }\n\n .card-footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 12px 16px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-sunken);\n }\n\n .owner-tag {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 12px;\n color: var(--mj-text-secondary);\n }\n\n .owner-tag.is-me {\n color: var(--mj-brand-primary);\n }\n\n .date-info {\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n /* Hierarchy View */\n .category-tree {\n display: flex;\n flex-direction: column;\n gap: 8px;\n }\n\n .category-section {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .category-header {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 12px 16px;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .category-header:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .category-header i:first-child {\n width: 16px;\n text-align: center;\n color: var(--mj-text-muted);\n }\n\n .category-header .fa-folder,\n .category-header .fa-folder-open {\n color: var(--mj-status-warning);\n }\n\n .category-header.uncategorized .fa-inbox {\n color: var(--mj-text-muted);\n }\n\n .category-name {\n flex: 1;\n font-weight: 500;\n color: var(--mj-text-primary);\n }\n\n .category-count {\n font-size: 12px;\n color: var(--mj-text-muted);\n background: var(--mj-bg-surface-sunken);\n padding: 2px 8px;\n border-radius: 10px;\n }\n\n .category-lists {\n border-top: 1px solid var(--mj-border-default);\n }\n\n .hierarchy-row {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px 16px 12px 40px;\n cursor: pointer;\n transition: background 0.2s;\n outline: none;\n }\n\n .hierarchy-row:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .hierarchy-row:focus {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .hierarchy-row:focus-visible {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n box-shadow: inset 3px 0 0 var(--mj-brand-primary);\n }\n\n .list-info {\n flex: 1;\n min-width: 0;\n }\n\n .list-meta {\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n .list-actions {\n display: flex;\n gap: 4px;\n opacity: 0;\n transition: opacity 0.2s;\n }\n\n .hierarchy-row:hover .list-actions {\n opacity: 1;\n }\n\n /* Context Menu */\n .context-menu-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 999;\n }\n\n .context-menu {\n position: fixed;\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n box-shadow: var(--mj-shadow-md);\n min-width: 160px;\n padding: 4px 0;\n z-index: 1000;\n }\n\n .menu-item {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 10px 16px;\n background: none;\n border: none;\n text-align: left;\n font-size: 14px;\n color: var(--mj-text-primary);\n cursor: pointer;\n transition: background 0.15s;\n }\n\n .menu-item:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .menu-item.danger {\n color: var(--mj-status-error);\n }\n\n .menu-item.danger:hover {\n background: color-mix(in srgb, var(--mj-status-error) 15%, var(--mj-bg-surface));\n }\n\n .menu-divider {\n height: 1px;\n background: var(--mj-border-default);\n margin: 4px 0;\n }\n\n .menu-viewer-hint {\n padding: 10px 14px;\n font-size: 12px;\n color: var(--mj-text-muted);\n display: flex;\n align-items: center;\n gap: 8px;\n font-style: italic;\n }\n .menu-viewer-hint i { color: var(--mj-text-muted); }\n\n /* Modal Styles */\n .modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: var(--mj-bg-overlay);\n z-index: 1000;\n }\n\n .modal-dialog {\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background: var(--mj-bg-surface-card);\n border-radius: 12px;\n box-shadow: var(--mj-shadow-lg);\n width: 500px;\n max-width: 90vw;\n max-height: 90vh;\n overflow: hidden;\n z-index: 1001;\n }\n\n .confirm-dialog {\n width: 400px;\n }\n\n .modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 16px 20px;\n border-bottom: 1px solid var(--mj-border-default);\n }\n\n .modal-header h3 {\n margin: 0;\n font-size: 18px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .modal-close {\n background: none;\n border: none;\n padding: 4px 8px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n }\n\n .modal-close:hover {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n }\n\n .modal-body {\n padding: 20px;\n max-height: 60vh;\n overflow-y: auto;\n }\n\n .modal-body p {\n margin: 0 0 8px;\n color: var(--mj-text-primary);\n }\n\n .warning-text {\n color: var(--mj-status-error) !important;\n font-size: 13px;\n }\n\n .modal-footer {\n display: flex;\n gap: 12px;\n padding: 16px 20px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-sunken);\n }\n\n .btn-primary {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 20px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-primary:hover:not(:disabled) {\n background: var(--mj-brand-primary-hover);\n }\n\n .btn-primary:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n }\n\n .btn-secondary {\n padding: 10px 20px;\n background: var(--mj-bg-surface-card);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-secondary:hover:not(:disabled) {\n background: var(--mj-bg-surface-sunken);\n }\n\n .btn-danger {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 20px;\n background: var(--mj-status-error);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-danger:hover:not(:disabled) {\n background: color-mix(in srgb, var(--mj-status-error) 85%, black);\n }\n\n /* Form Styles */\n .form-group {\n margin-bottom: 16px;\n }\n\n .form-group:last-child {\n margin-bottom: 0;\n }\n\n .form-group label {\n display: block;\n margin-bottom: 6px;\n font-size: 13px;\n font-weight: 500;\n color: var(--mj-text-secondary);\n }\n\n .form-input {\n width: 100%;\n padding: 10px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n transition: border-color 0.2s, box-shadow 0.2s;\n box-sizing: border-box;\n }\n\n .form-input:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .form-input:disabled {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-muted);\n }\n\n textarea.form-input {\n resize: vertical;\n min-height: 80px;\n }\n\n select.form-input {\n cursor: pointer;\n }\n\n .custom-select-wrapper {\n position: relative;\n }\n\n /* Portal Dropdown */\n .entity-dropdown-portal {\n position: fixed;\n z-index: 10002;\n }\n\n .entity-dropdown-content {\n max-height: 200px;\n overflow-y: auto;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n box-shadow: var(--mj-shadow-md);\n }\n\n .entity-dropdown-content.open-above {\n position: absolute;\n bottom: 0;\n }\n\n .dropdown-item {\n padding: 10px 12px;\n cursor: pointer;\n transition: background 0.15s;\n font-size: 14px;\n color: var(--mj-text-primary);\n }\n\n .dropdown-item:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .dropdown-item:first-child {\n border-radius: 6px 6px 0 0;\n }\n\n .dropdown-item:last-child {\n border-radius: 0 0 6px 6px;\n }\n\n .dropdown-empty {\n padding: 10px 12px;\n color: var(--mj-text-muted);\n font-style: italic;\n }\n\n /* Responsive */\n @media (max-width: 768px) {\n .header-row {\n flex-direction: column;\n gap: 12px;\n align-items: stretch;\n }\n\n .btn-create {\n width: 100%;\n justify-content: center;\n }\n\n .header-actions {\n flex-direction: column;\n align-items: stretch;\n }\n\n .search-box {\n max-width: none;\n }\n\n .filter-group {\n width: 100%;\n }\n\n .filter-select {\n flex: 1;\n width: 100%;\n }\n\n .view-toggle-group {\n justify-content: center;\n }\n\n .lists-table {\n overflow-x: auto;\n }\n\n .col-entity, .col-items, .col-updated {\n display: none;\n }\n\n .lists-grid {\n grid-template-columns: 1fr;\n }\n\n .modal-dialog {\n width: 95vw;\n }\n }\n "], encapsulation: 2 });
2042
+ i0.ɵɵconditional(ctx.showEntityDropdown && !ctx.editingList ? 30 : -1);
2043
+ } }, dependencies: [i4.NgTemplateOutlet, i5.NgSelectOption, i5.ɵNgSelectMultipleOption, i5.DefaultValueAccessor, i5.SelectControlValueAccessor, i5.NgControlStatus, i5.NgModel, i6.MJButtonDirective, i6.MJDialogComponent, i6.MJDialogActionsComponent, i6.MJPageLayoutComponent, i6.MJPageHeaderComponent, i6.MJPageBodyComponent, i6.MJPageSearchComponent, i6.MJFilterPopoverComponent, i6.MJFilterPanelComponent, i6.MJViewToggleComponent, i6.MJStatBadgeComponent, i7.LoadingComponent, i3.ListAuditLogComponent, i3.ListInvitationsComponent, i3.ListShareDialogComponent, i3.TagChipsComponent], styles: ["\n :host {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n }\n\n /* Control bar: on mobile search grows so the icon-only Filter + view toggle\n stay on one line. On desktop search keeps its natural width. */\n @media (max-width: 768px) {\n mj-page-search {\n flex: 1;\n }\n }\n\n .lists-browse-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: var(--mj-bg-surface);\n overflow: hidden;\n }\n\n /* Header */\n .browse-header {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 16px 24px;\n background: var(--mj-bg-surface-card);\n border-bottom: 1px solid var(--mj-border-default);\n flex-shrink: 0;\n }\n\n .header-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .header-title {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n\n .header-title i {\n font-size: 24px;\n color: var(--mj-brand-primary);\n }\n\n .header-title h2 {\n margin: 0;\n font-size: 20px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .header-actions {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n }\n\n .search-box {\n position: relative;\n display: flex;\n align-items: center;\n flex: 1;\n min-width: 200px;\n max-width: 300px;\n }\n\n .search-box i.fa-search {\n position: absolute;\n left: 12px;\n color: var(--mj-text-muted);\n }\n\n .search-box input {\n padding: 8px 36px;\n border: 1px solid var(--mj-border-default);\n border-radius: 20px;\n font-size: 14px;\n width: 100%;\n transition: border-color 0.2s, box-shadow 0.2s;\n }\n\n .search-box input:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .clear-search {\n position: absolute;\n right: 8px;\n background: none;\n border: none;\n color: var(--mj-text-muted);\n cursor: pointer;\n }\n\n .filter-group {\n display: flex;\n align-items: center;\n gap: 6px;\n }\n\n .filter-group label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n }\n\n .filter-select {\n padding: 8px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n background: var(--mj-bg-surface-card);\n cursor: pointer;\n min-width: 120px;\n }\n\n .filter-select:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .sort-select {\n min-width: 140px;\n }\n\n .view-toggle-group {\n display: flex;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n overflow: hidden;\n }\n\n .view-toggle {\n padding: 8px 12px;\n background: var(--mj-bg-surface-card);\n border: none;\n border-right: 1px solid var(--mj-border-default);\n color: var(--mj-text-secondary);\n cursor: pointer;\n transition: all 0.2s;\n }\n\n .view-toggle:last-child {\n border-right: none;\n }\n\n .view-toggle:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .view-toggle.active {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n }\n\n .btn-create {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 16px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-create:hover {\n background: var(--mj-brand-primary-hover);\n }\n\n /* Loading */\n .loading-container {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 1;\n }\n\n /* Empty State */\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n flex: 1;\n padding: 48px 40px;\n text-align: center;\n max-width: 480px;\n margin: 0 auto;\n }\n\n .empty-state-icon-wrapper {\n position: relative;\n margin-bottom: 24px;\n }\n\n .empty-state-icon-wrapper .icon-bg {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 120px;\n height: 120px;\n border-radius: 50%;\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n }\n\n .empty-state-icon-wrapper > i {\n position: relative;\n font-size: 56px;\n color: var(--mj-brand-primary);\n z-index: 1;\n }\n\n .empty-state-icon-wrapper.search > i {\n font-size: 48px;\n color: var(--mj-text-disabled);\n }\n\n .empty-state h3 {\n margin: 0 0 12px;\n font-size: 22px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .empty-state p {\n margin: 0 0 8px;\n color: var(--mj-text-secondary);\n font-size: 15px;\n line-height: 1.5;\n }\n\n .empty-state p:last-of-type {\n margin-bottom: 24px;\n }\n\n .empty-hint {\n color: var(--mj-text-muted) !important;\n font-size: 13px !important;\n }\n\n .empty-state-features {\n display: flex;\n flex-direction: column;\n gap: 8px;\n margin-bottom: 28px;\n text-align: left;\n }\n\n .feature-item {\n display: flex;\n align-items: center;\n gap: 10px;\n font-size: 14px;\n color: var(--mj-text-secondary);\n }\n\n .feature-item i {\n font-size: 14px !important;\n color: var(--mj-status-success) !important;\n }\n\n .btn-create-large {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 14px 28px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 8px;\n font-size: 15px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s;\n box-shadow: 0 2px 8px color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n\n .btn-create-large:hover {\n background: var(--mj-brand-primary-hover);\n transform: translateY(-1px);\n box-shadow: 0 4px 12px color-mix(in srgb, var(--mj-brand-primary) 40%, transparent);\n }\n\n .btn-clear {\n padding: 10px 20px;\n background: var(--mj-bg-surface-sunken);\n border: none;\n border-radius: 6px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-clear:hover {\n background: var(--mj-border-default);\n }\n\n /* Content */\n .browse-content {\n flex: 1;\n overflow-y: auto;\n padding: 16px 24px;\n }\n\n .results-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n }\n\n .result-count {\n font-size: 14px;\n color: var(--mj-text-secondary);\n }\n\n .sort-options {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .sort-options label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n }\n\n /* Table View */\n .lists-table {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n overflow: hidden;\n box-shadow: var(--mj-shadow-sm);\n }\n\n .lists-table table {\n width: 100%;\n border-collapse: collapse;\n }\n\n .lists-table th {\n text-align: left;\n padding: 12px 16px;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n background: var(--mj-bg-surface-sunken);\n border-bottom: 1px solid var(--mj-border-default);\n }\n\n .lists-table td {\n padding: 12px 16px;\n border-bottom: 1px solid var(--mj-border-default);\n font-size: 14px;\n color: var(--mj-text-primary);\n }\n\n .list-row {\n cursor: pointer;\n transition: background 0.15s;\n outline: none;\n }\n\n .list-row:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .list-row:focus {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .list-row:focus-visible {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n box-shadow: inset 3px 0 0 var(--mj-brand-primary);\n }\n\n .list-row:last-child td {\n border-bottom: none;\n }\n\n .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n }\n\n .col-name { width: 30%; }\n .col-entity { width: 15%; }\n .col-items { width: 8%; text-align: center; }\n .col-sharing { width: 8%; text-align: center; }\n .col-owner { width: 14%; }\n .col-updated { width: 15%; }\n .col-actions { width: 10%; text-align: right; }\n\n /* Sharing indicators */\n .sharing-indicator {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: var(--mj-brand-primary);\n font-size: 13px;\n }\n\n .sharing-indicator i {\n font-size: 14px;\n }\n\n .share-count {\n font-weight: 500;\n }\n\n .sharing-private {\n color: var(--mj-text-muted);\n font-size: 13px;\n }\n\n .sharing-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n border-radius: 50%;\n color: var(--mj-brand-primary);\n font-size: 11px;\n }\n\n .card-footer-right {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .name-cell {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n\n .list-icon {\n width: 36px;\n height: 36px;\n border-radius: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mj-text-inverse);\n font-size: 14px;\n flex-shrink: 0;\n }\n\n .name-content {\n display: flex;\n flex-direction: column;\n min-width: 0;\n }\n\n .list-name {\n font-weight: 500;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .list-desc {\n font-size: 12px;\n color: var(--mj-text-muted);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .entity-badge {\n display: inline-block;\n padding: 2px 8px;\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n border-radius: 4px;\n font-size: 12px;\n color: var(--mj-brand-primary-hover);\n }\n\n .owner-name {\n color: var(--mj-text-secondary);\n }\n\n .owner-name.is-me {\n color: var(--mj-brand-primary);\n font-weight: 500;\n }\n\n .action-btn {\n background: none;\n border: none;\n padding: 6px 10px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n transition: all 0.15s;\n }\n\n .action-btn:hover {\n background: var(--mj-border-default);\n color: var(--mj-text-secondary);\n }\n\n /* Card View */\n .lists-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n gap: 16px;\n }\n\n .list-card {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n box-shadow: var(--mj-shadow-sm);\n overflow: hidden;\n cursor: pointer;\n transition: transform 0.2s, box-shadow 0.2s, outline 0.1s;\n outline: 2px solid transparent;\n }\n\n .list-card:hover {\n transform: translateY(-2px);\n box-shadow: var(--mj-shadow-md);\n }\n\n .list-card:focus {\n outline: 2px solid var(--mj-brand-primary);\n outline-offset: 2px;\n }\n\n .list-card:focus:not(:focus-visible) {\n outline: none;\n }\n\n .list-card:focus-visible {\n outline: 2px solid var(--mj-brand-primary);\n outline-offset: 2px;\n }\n\n .card-header {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n padding: 16px 16px 0;\n }\n\n .card-icon {\n width: 40px;\n height: 40px;\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mj-text-inverse);\n font-size: 18px;\n }\n\n .menu-btn {\n background: none;\n border: none;\n padding: 4px 8px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n }\n\n .menu-btn:hover {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n }\n\n .card-body {\n padding: 12px 16px;\n }\n\n .card-title {\n margin: 0 0 4px;\n font-size: 16px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .card-description {\n margin: 0 0 12px;\n font-size: 13px;\n color: var(--mj-text-secondary);\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n }\n\n .card-meta {\n display: flex;\n gap: 16px;\n }\n\n .meta-item {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n /* Tag chips on a card. Stop-propagation is set on the wrapper so\n clicks on chips don't open the underlying list. */\n .card-tags {\n margin-top: 8px;\n }\n\n /* Favorite star on cards (Phase 5.3). */\n .favorite-btn {\n background: none;\n border: none;\n padding: 4px;\n margin: -4px;\n cursor: pointer;\n color: var(--mj-text-muted);\n font-size: 14px;\n border-radius: 4px;\n transition: color 0.12s ease, background 0.12s ease;\n }\n\n .favorite-btn:hover {\n background: var(--mj-bg-surface-card);\n color: var(--mj-status-warning);\n }\n\n .favorite-btn--active {\n color: var(--mj-status-warning);\n }\n\n /* Favorites-only toggle in the toolbar. */\n .favorite-filter-toggle {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 6px 12px;\n background: none;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 12.5px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n }\n\n .favorite-filter-toggle:hover {\n border-color: var(--mj-status-warning);\n color: var(--mj-status-warning);\n }\n\n .favorite-filter-toggle--active {\n background: color-mix(in srgb, var(--mj-status-warning) 12%, var(--mj-bg-surface));\n border-color: var(--mj-status-warning);\n color: var(--mj-status-warning);\n font-weight: 600;\n }\n\n /* Active-tag filter row above the grid (Phase 4.3). */\n .tag-filter-row {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 8px;\n padding: 10px 12px;\n margin-bottom: 12px;\n background: var(--mj-bg-surface-sunken);\n border: 1px dashed var(--mj-border-default);\n border-radius: 8px;\n font-size: 12.5px;\n }\n\n .tag-filter-row__label {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n color: var(--mj-text-muted);\n font-weight: 500;\n }\n\n .tag-filter-chip {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 2px 10px;\n border-radius: 999px;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n border: 1px solid var(--mj-brand-primary);\n font-size: 11.5px;\n cursor: pointer;\n }\n\n .tag-filter-chip:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 20%, var(--mj-bg-surface));\n }\n\n .tag-filter-row__clear {\n background: none;\n border: none;\n color: var(--mj-text-link);\n font-size: 11.5px;\n cursor: pointer;\n margin-left: auto;\n }\n\n .tag-filter-row__clear:hover {\n text-decoration: underline;\n }\n\n .card-footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 12px 16px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-sunken);\n }\n\n .owner-tag {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 12px;\n color: var(--mj-text-secondary);\n }\n\n .owner-tag.is-me {\n color: var(--mj-brand-primary);\n }\n\n .date-info {\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n /* Hierarchy View */\n .category-tree {\n display: flex;\n flex-direction: column;\n gap: 8px;\n }\n\n .category-section {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .category-header {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 12px 16px;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .category-header:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .category-header i:first-child {\n width: 16px;\n text-align: center;\n color: var(--mj-text-muted);\n }\n\n .category-header .fa-folder,\n .category-header .fa-folder-open {\n color: var(--mj-status-warning);\n }\n\n .category-header.uncategorized .fa-inbox {\n color: var(--mj-text-muted);\n }\n\n .category-name {\n flex: 1;\n font-weight: 500;\n color: var(--mj-text-primary);\n }\n\n .category-count {\n font-size: 12px;\n color: var(--mj-text-muted);\n background: var(--mj-bg-surface-sunken);\n padding: 2px 8px;\n border-radius: 10px;\n }\n\n .category-lists {\n border-top: 1px solid var(--mj-border-default);\n }\n\n .hierarchy-row {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px 16px 12px 40px;\n cursor: pointer;\n transition: background 0.2s;\n outline: none;\n }\n\n .hierarchy-row:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .hierarchy-row:focus {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .hierarchy-row:focus-visible {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n box-shadow: inset 3px 0 0 var(--mj-brand-primary);\n }\n\n .list-info {\n flex: 1;\n min-width: 0;\n }\n\n .list-meta {\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n .list-actions {\n display: flex;\n gap: 4px;\n opacity: 0;\n transition: opacity 0.2s;\n }\n\n .hierarchy-row:hover .list-actions {\n opacity: 1;\n }\n\n /* Context Menu */\n .context-menu-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 999;\n }\n\n .context-menu {\n position: fixed;\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n box-shadow: var(--mj-shadow-md);\n min-width: 160px;\n padding: 4px 0;\n z-index: 1000;\n }\n\n .menu-item {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 10px 16px;\n background: none;\n border: none;\n text-align: left;\n font-size: 14px;\n color: var(--mj-text-primary);\n cursor: pointer;\n transition: background 0.15s;\n }\n\n .menu-item:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .menu-item.danger {\n color: var(--mj-status-error);\n }\n\n .menu-item.danger:hover {\n background: color-mix(in srgb, var(--mj-status-error) 15%, var(--mj-bg-surface));\n }\n\n .menu-divider {\n height: 1px;\n background: var(--mj-border-default);\n margin: 4px 0;\n }\n\n .menu-viewer-hint {\n padding: 10px 14px;\n font-size: 12px;\n color: var(--mj-text-muted);\n display: flex;\n align-items: center;\n gap: 8px;\n font-style: italic;\n }\n .menu-viewer-hint i { color: var(--mj-text-muted); }\n\n /* Modal Styles */\n .modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: var(--mj-bg-overlay);\n z-index: 1000;\n }\n\n .modal-dialog {\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background: var(--mj-bg-surface-card);\n border-radius: 12px;\n box-shadow: var(--mj-shadow-lg);\n width: 500px;\n max-width: 90vw;\n max-height: 90vh;\n overflow: hidden;\n z-index: 1001;\n }\n\n .confirm-dialog {\n width: 400px;\n }\n\n .modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 16px 20px;\n border-bottom: 1px solid var(--mj-border-default);\n }\n\n .modal-header h3 {\n margin: 0;\n font-size: 18px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .modal-close {\n background: none;\n border: none;\n padding: 4px 8px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n }\n\n .modal-close:hover {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n }\n\n .modal-body {\n padding: 20px;\n max-height: 60vh;\n overflow-y: auto;\n }\n\n .modal-body p {\n margin: 0 0 8px;\n color: var(--mj-text-primary);\n }\n\n .warning-text {\n color: var(--mj-status-error) !important;\n font-size: 13px;\n }\n\n .modal-footer {\n display: flex;\n gap: 12px;\n padding: 16px 20px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-sunken);\n }\n\n .btn-primary {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 20px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-primary:hover:not(:disabled) {\n background: var(--mj-brand-primary-hover);\n }\n\n .btn-primary:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n }\n\n .btn-secondary {\n padding: 10px 20px;\n background: var(--mj-bg-surface-card);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-secondary:hover:not(:disabled) {\n background: var(--mj-bg-surface-sunken);\n }\n\n .btn-danger {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 20px;\n background: var(--mj-status-error);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-danger:hover:not(:disabled) {\n background: color-mix(in srgb, var(--mj-status-error) 85%, black);\n }\n\n /* Form Styles */\n .form-group {\n margin-bottom: 16px;\n }\n\n .form-group:last-child {\n margin-bottom: 0;\n }\n\n .form-group label {\n display: block;\n margin-bottom: 6px;\n font-size: 13px;\n font-weight: 500;\n color: var(--mj-text-secondary);\n }\n\n .form-input {\n width: 100%;\n padding: 10px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n transition: border-color 0.2s, box-shadow 0.2s;\n box-sizing: border-box;\n }\n\n .form-input:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .form-input:disabled {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-muted);\n }\n\n textarea.form-input {\n resize: vertical;\n min-height: 80px;\n }\n\n select.form-input {\n cursor: pointer;\n }\n\n .custom-select-wrapper {\n position: relative;\n }\n\n /* Portal Dropdown */\n .entity-dropdown-portal {\n position: fixed;\n z-index: 10002;\n }\n\n .entity-dropdown-content {\n max-height: 200px;\n overflow-y: auto;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n box-shadow: var(--mj-shadow-md);\n }\n\n .entity-dropdown-content.open-above {\n position: absolute;\n bottom: 0;\n }\n\n .dropdown-item {\n padding: 10px 12px;\n cursor: pointer;\n transition: background 0.15s;\n font-size: 14px;\n color: var(--mj-text-primary);\n }\n\n .dropdown-item:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .dropdown-item:first-child {\n border-radius: 6px 6px 0 0;\n }\n\n .dropdown-item:last-child {\n border-radius: 0 0 6px 6px;\n }\n\n .dropdown-empty {\n padding: 10px 12px;\n color: var(--mj-text-muted);\n font-style: italic;\n }\n\n /* Responsive */\n @media (max-width: 768px) {\n .header-row {\n flex-direction: column;\n gap: 12px;\n align-items: stretch;\n }\n\n .btn-create {\n width: 100%;\n justify-content: center;\n }\n\n .header-actions {\n flex-direction: column;\n align-items: stretch;\n }\n\n .search-box {\n max-width: none;\n }\n\n .filter-group {\n width: 100%;\n }\n\n .filter-select {\n flex: 1;\n width: 100%;\n }\n\n .view-toggle-group {\n justify-content: center;\n }\n\n .lists-table {\n overflow-x: auto;\n }\n\n .col-entity, .col-items, .col-updated {\n display: none;\n }\n\n .lists-grid {\n grid-template-columns: 1fr;\n }\n\n .modal-dialog {\n width: 95vw;\n }\n }\n "], encapsulation: 2 });
2057
2044
  };
2058
2045
  ListsBrowseResource = __decorate([
2059
2046
  RegisterClass(BaseResourceComponent, 'ListsBrowseResource')
@@ -2073,10 +2060,28 @@ export { ListsBrowseResource };
2073
2060
  </mj-stat-badge>
2074
2061
  </div>
2075
2062
  <div actions>
2063
+ <!-- Single primary CTA; all filters live behind the Filter button in
2064
+ the control bar below (concise chrome). -->
2065
+ <button mjButton variant="primary" size="sm" (click)="createNewList()">
2066
+ <i class="fa-solid fa-plus"></i> <span class="action-btn-label">New List</span>
2067
+ </button>
2068
+ </div>
2069
+ <div toolbar>
2070
+ <!-- Control bar: search · Filter · view. Owner, Entity and Favorites
2071
+ all live behind the one Filter button; applied filters (including
2072
+ tags) show as removable chips below. On mobile the popover docks
2073
+ as a bottom sheet and the Filter button is icon-only. -->
2074
+ <mj-page-search
2075
+ Placeholder="Search lists..."
2076
+ [Value]="searchTerm"
2077
+ (ValueChange)="onSearchChange($event)">
2078
+ </mj-page-search>
2076
2079
  <mj-filter-popover
2077
- [ActiveCount]="ActiveFilterCount"
2078
- [ShowClearAll]="ActiveFilterCount > 0"
2079
- (ClearAllRequested)="resetPopoverFilters()">
2080
+ Label="Filters"
2081
+ Icon="fa-solid fa-filter"
2082
+ [ActiveCount]="TotalActiveFilterCount"
2083
+ [ShowClearAll]="TotalActiveFilterCount > 0"
2084
+ (ClearAllRequested)="clearAllAppliedFilters()">
2080
2085
  <mj-filter-panel
2081
2086
  [Fields]="listFilterFields"
2082
2087
  [Values]="listFilterValues"
@@ -2084,61 +2089,15 @@ export { ListsBrowseResource };
2084
2089
  (Reset)="resetPopoverFilters()">
2085
2090
  </mj-filter-panel>
2086
2091
  </mj-filter-popover>
2087
-
2088
2092
  <mj-view-toggle
2089
2093
  [Options]="listViewOptions"
2090
2094
  [ActiveKey]="viewMode"
2091
2095
  (KeyChange)="setViewMode($any($event))">
2092
2096
  </mj-view-toggle>
2093
-
2094
- <!-- Favorites-only toggle (Phase 5.3). Sits next to the view toggle
2095
- so it reads as "filter scope" alongside view mode. -->
2096
- <button
2097
- class="favorite-filter-toggle"
2098
- [class.favorite-filter-toggle--active]="showOnlyFavorites"
2099
- (click)="toggleShowOnlyFavorites()"
2100
- [title]="showOnlyFavorites ? 'Showing favorites only' : 'Show all lists'">
2101
- <i [class]="showOnlyFavorites ? 'fa-solid fa-star' : 'fa-regular fa-star'"></i>
2102
- Favorites
2103
- </button>
2104
-
2105
- <button mjButton variant="primary" size="sm" (click)="createNewList()">
2106
- <i class="fa-solid fa-plus"></i> New List
2107
- </button>
2108
- </div>
2109
- <div toolbar>
2110
- <mj-page-search
2111
- Placeholder="Search lists..."
2112
- [Value]="searchTerm"
2113
- (ValueChange)="onSearchChange($event)">
2114
- </mj-page-search>
2115
2097
  </div>
2116
2098
  </mj-page-header>
2117
2099
 
2118
2100
  <mj-page-body>
2119
-
2120
- <!-- Active tag filters (Phase 4.3). Renders only when at least one
2121
- tag is active — multi-tag = AND. Clicking a chip's × removes it. -->
2122
- @if (tagFilters.length > 0) {
2123
- <div class="tag-filter-row">
2124
- <span class="tag-filter-row__label">
2125
- <i class="fa-solid fa-tag"></i>
2126
- Filtering by tag:
2127
- </span>
2128
- @for (f of tagFilters; track f.TagID) {
2129
- <button
2130
- class="tag-filter-chip"
2131
- type="button"
2132
- (click)="removeTagFilter(f.TagID)">
2133
- {{ f.Name }}
2134
- <i class="fa-solid fa-xmark"></i>
2135
- </button>
2136
- }
2137
- <button class="tag-filter-row__clear" type="button" (click)="clearTagFilters()">
2138
- Clear all
2139
- </button>
2140
- </div>
2141
- }
2142
2101
 
2143
2102
  <!-- Loading State -->
2144
2103
  @if (isLoading) {
@@ -2674,7 +2633,7 @@ export { ListsBrowseResource };
2674
2633
  </div>
2675
2634
  }
2676
2635
  </mj-page-layout>
2677
- `, encapsulation: ViewEncapsulation.None, styles: ["\n :host {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n }\n\n .lists-browse-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: var(--mj-bg-surface);\n overflow: hidden;\n }\n\n /* Header */\n .browse-header {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 16px 24px;\n background: var(--mj-bg-surface-card);\n border-bottom: 1px solid var(--mj-border-default);\n flex-shrink: 0;\n }\n\n .header-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .header-title {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n\n .header-title i {\n font-size: 24px;\n color: var(--mj-brand-primary);\n }\n\n .header-title h2 {\n margin: 0;\n font-size: 20px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .header-actions {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n }\n\n .search-box {\n position: relative;\n display: flex;\n align-items: center;\n flex: 1;\n min-width: 200px;\n max-width: 300px;\n }\n\n .search-box i.fa-search {\n position: absolute;\n left: 12px;\n color: var(--mj-text-muted);\n }\n\n .search-box input {\n padding: 8px 36px;\n border: 1px solid var(--mj-border-default);\n border-radius: 20px;\n font-size: 14px;\n width: 100%;\n transition: border-color 0.2s, box-shadow 0.2s;\n }\n\n .search-box input:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .clear-search {\n position: absolute;\n right: 8px;\n background: none;\n border: none;\n color: var(--mj-text-muted);\n cursor: pointer;\n }\n\n .filter-group {\n display: flex;\n align-items: center;\n gap: 6px;\n }\n\n .filter-group label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n }\n\n .filter-select {\n padding: 8px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n background: var(--mj-bg-surface-card);\n cursor: pointer;\n min-width: 120px;\n }\n\n .filter-select:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .sort-select {\n min-width: 140px;\n }\n\n .view-toggle-group {\n display: flex;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n overflow: hidden;\n }\n\n .view-toggle {\n padding: 8px 12px;\n background: var(--mj-bg-surface-card);\n border: none;\n border-right: 1px solid var(--mj-border-default);\n color: var(--mj-text-secondary);\n cursor: pointer;\n transition: all 0.2s;\n }\n\n .view-toggle:last-child {\n border-right: none;\n }\n\n .view-toggle:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .view-toggle.active {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n }\n\n .btn-create {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 16px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-create:hover {\n background: var(--mj-brand-primary-hover);\n }\n\n /* Loading */\n .loading-container {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 1;\n }\n\n /* Empty State */\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n flex: 1;\n padding: 48px 40px;\n text-align: center;\n max-width: 480px;\n margin: 0 auto;\n }\n\n .empty-state-icon-wrapper {\n position: relative;\n margin-bottom: 24px;\n }\n\n .empty-state-icon-wrapper .icon-bg {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 120px;\n height: 120px;\n border-radius: 50%;\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n }\n\n .empty-state-icon-wrapper > i {\n position: relative;\n font-size: 56px;\n color: var(--mj-brand-primary);\n z-index: 1;\n }\n\n .empty-state-icon-wrapper.search > i {\n font-size: 48px;\n color: var(--mj-text-disabled);\n }\n\n .empty-state h3 {\n margin: 0 0 12px;\n font-size: 22px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .empty-state p {\n margin: 0 0 8px;\n color: var(--mj-text-secondary);\n font-size: 15px;\n line-height: 1.5;\n }\n\n .empty-state p:last-of-type {\n margin-bottom: 24px;\n }\n\n .empty-hint {\n color: var(--mj-text-muted) !important;\n font-size: 13px !important;\n }\n\n .empty-state-features {\n display: flex;\n flex-direction: column;\n gap: 8px;\n margin-bottom: 28px;\n text-align: left;\n }\n\n .feature-item {\n display: flex;\n align-items: center;\n gap: 10px;\n font-size: 14px;\n color: var(--mj-text-secondary);\n }\n\n .feature-item i {\n font-size: 14px !important;\n color: var(--mj-status-success) !important;\n }\n\n .btn-create-large {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 14px 28px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 8px;\n font-size: 15px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s;\n box-shadow: 0 2px 8px color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n\n .btn-create-large:hover {\n background: var(--mj-brand-primary-hover);\n transform: translateY(-1px);\n box-shadow: 0 4px 12px color-mix(in srgb, var(--mj-brand-primary) 40%, transparent);\n }\n\n .btn-clear {\n padding: 10px 20px;\n background: var(--mj-bg-surface-sunken);\n border: none;\n border-radius: 6px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-clear:hover {\n background: var(--mj-border-default);\n }\n\n /* Content */\n .browse-content {\n flex: 1;\n overflow-y: auto;\n padding: 16px 24px;\n }\n\n .results-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n }\n\n .result-count {\n font-size: 14px;\n color: var(--mj-text-secondary);\n }\n\n .sort-options {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .sort-options label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n }\n\n /* Table View */\n .lists-table {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n overflow: hidden;\n box-shadow: var(--mj-shadow-sm);\n }\n\n .lists-table table {\n width: 100%;\n border-collapse: collapse;\n }\n\n .lists-table th {\n text-align: left;\n padding: 12px 16px;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n background: var(--mj-bg-surface-sunken);\n border-bottom: 1px solid var(--mj-border-default);\n }\n\n .lists-table td {\n padding: 12px 16px;\n border-bottom: 1px solid var(--mj-border-default);\n font-size: 14px;\n color: var(--mj-text-primary);\n }\n\n .list-row {\n cursor: pointer;\n transition: background 0.15s;\n outline: none;\n }\n\n .list-row:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .list-row:focus {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .list-row:focus-visible {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n box-shadow: inset 3px 0 0 var(--mj-brand-primary);\n }\n\n .list-row:last-child td {\n border-bottom: none;\n }\n\n .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n }\n\n .col-name { width: 30%; }\n .col-entity { width: 15%; }\n .col-items { width: 8%; text-align: center; }\n .col-sharing { width: 8%; text-align: center; }\n .col-owner { width: 14%; }\n .col-updated { width: 15%; }\n .col-actions { width: 10%; text-align: right; }\n\n /* Sharing indicators */\n .sharing-indicator {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: var(--mj-brand-primary);\n font-size: 13px;\n }\n\n .sharing-indicator i {\n font-size: 14px;\n }\n\n .share-count {\n font-weight: 500;\n }\n\n .sharing-private {\n color: var(--mj-text-muted);\n font-size: 13px;\n }\n\n .sharing-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n border-radius: 50%;\n color: var(--mj-brand-primary);\n font-size: 11px;\n }\n\n .card-footer-right {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .name-cell {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n\n .list-icon {\n width: 36px;\n height: 36px;\n border-radius: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mj-text-inverse);\n font-size: 14px;\n flex-shrink: 0;\n }\n\n .name-content {\n display: flex;\n flex-direction: column;\n min-width: 0;\n }\n\n .list-name {\n font-weight: 500;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .list-desc {\n font-size: 12px;\n color: var(--mj-text-muted);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .entity-badge {\n display: inline-block;\n padding: 2px 8px;\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n border-radius: 4px;\n font-size: 12px;\n color: var(--mj-brand-primary-hover);\n }\n\n .owner-name {\n color: var(--mj-text-secondary);\n }\n\n .owner-name.is-me {\n color: var(--mj-brand-primary);\n font-weight: 500;\n }\n\n .action-btn {\n background: none;\n border: none;\n padding: 6px 10px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n transition: all 0.15s;\n }\n\n .action-btn:hover {\n background: var(--mj-border-default);\n color: var(--mj-text-secondary);\n }\n\n /* Card View */\n .lists-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n gap: 16px;\n }\n\n .list-card {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n box-shadow: var(--mj-shadow-sm);\n overflow: hidden;\n cursor: pointer;\n transition: transform 0.2s, box-shadow 0.2s, outline 0.1s;\n outline: 2px solid transparent;\n }\n\n .list-card:hover {\n transform: translateY(-2px);\n box-shadow: var(--mj-shadow-md);\n }\n\n .list-card:focus {\n outline: 2px solid var(--mj-brand-primary);\n outline-offset: 2px;\n }\n\n .list-card:focus:not(:focus-visible) {\n outline: none;\n }\n\n .list-card:focus-visible {\n outline: 2px solid var(--mj-brand-primary);\n outline-offset: 2px;\n }\n\n .card-header {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n padding: 16px 16px 0;\n }\n\n .card-icon {\n width: 40px;\n height: 40px;\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mj-text-inverse);\n font-size: 18px;\n }\n\n .menu-btn {\n background: none;\n border: none;\n padding: 4px 8px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n }\n\n .menu-btn:hover {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n }\n\n .card-body {\n padding: 12px 16px;\n }\n\n .card-title {\n margin: 0 0 4px;\n font-size: 16px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .card-description {\n margin: 0 0 12px;\n font-size: 13px;\n color: var(--mj-text-secondary);\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n }\n\n .card-meta {\n display: flex;\n gap: 16px;\n }\n\n .meta-item {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n /* Tag chips on a card. Stop-propagation is set on the wrapper so\n clicks on chips don't open the underlying list. */\n .card-tags {\n margin-top: 8px;\n }\n\n /* Favorite star on cards (Phase 5.3). */\n .favorite-btn {\n background: none;\n border: none;\n padding: 4px;\n margin: -4px;\n cursor: pointer;\n color: var(--mj-text-muted);\n font-size: 14px;\n border-radius: 4px;\n transition: color 0.12s ease, background 0.12s ease;\n }\n\n .favorite-btn:hover {\n background: var(--mj-bg-surface-card);\n color: var(--mj-status-warning);\n }\n\n .favorite-btn--active {\n color: var(--mj-status-warning);\n }\n\n /* Favorites-only toggle in the toolbar. */\n .favorite-filter-toggle {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 6px 12px;\n background: none;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 12.5px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n }\n\n .favorite-filter-toggle:hover {\n border-color: var(--mj-status-warning);\n color: var(--mj-status-warning);\n }\n\n .favorite-filter-toggle--active {\n background: color-mix(in srgb, var(--mj-status-warning) 12%, var(--mj-bg-surface));\n border-color: var(--mj-status-warning);\n color: var(--mj-status-warning);\n font-weight: 600;\n }\n\n /* Active-tag filter row above the grid (Phase 4.3). */\n .tag-filter-row {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 8px;\n padding: 10px 12px;\n margin-bottom: 12px;\n background: var(--mj-bg-surface-sunken);\n border: 1px dashed var(--mj-border-default);\n border-radius: 8px;\n font-size: 12.5px;\n }\n\n .tag-filter-row__label {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n color: var(--mj-text-muted);\n font-weight: 500;\n }\n\n .tag-filter-chip {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 2px 10px;\n border-radius: 999px;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n border: 1px solid var(--mj-brand-primary);\n font-size: 11.5px;\n cursor: pointer;\n }\n\n .tag-filter-chip:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 20%, var(--mj-bg-surface));\n }\n\n .tag-filter-row__clear {\n background: none;\n border: none;\n color: var(--mj-text-link);\n font-size: 11.5px;\n cursor: pointer;\n margin-left: auto;\n }\n\n .tag-filter-row__clear:hover {\n text-decoration: underline;\n }\n\n .card-footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 12px 16px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-sunken);\n }\n\n .owner-tag {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 12px;\n color: var(--mj-text-secondary);\n }\n\n .owner-tag.is-me {\n color: var(--mj-brand-primary);\n }\n\n .date-info {\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n /* Hierarchy View */\n .category-tree {\n display: flex;\n flex-direction: column;\n gap: 8px;\n }\n\n .category-section {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .category-header {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 12px 16px;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .category-header:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .category-header i:first-child {\n width: 16px;\n text-align: center;\n color: var(--mj-text-muted);\n }\n\n .category-header .fa-folder,\n .category-header .fa-folder-open {\n color: var(--mj-status-warning);\n }\n\n .category-header.uncategorized .fa-inbox {\n color: var(--mj-text-muted);\n }\n\n .category-name {\n flex: 1;\n font-weight: 500;\n color: var(--mj-text-primary);\n }\n\n .category-count {\n font-size: 12px;\n color: var(--mj-text-muted);\n background: var(--mj-bg-surface-sunken);\n padding: 2px 8px;\n border-radius: 10px;\n }\n\n .category-lists {\n border-top: 1px solid var(--mj-border-default);\n }\n\n .hierarchy-row {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px 16px 12px 40px;\n cursor: pointer;\n transition: background 0.2s;\n outline: none;\n }\n\n .hierarchy-row:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .hierarchy-row:focus {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .hierarchy-row:focus-visible {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n box-shadow: inset 3px 0 0 var(--mj-brand-primary);\n }\n\n .list-info {\n flex: 1;\n min-width: 0;\n }\n\n .list-meta {\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n .list-actions {\n display: flex;\n gap: 4px;\n opacity: 0;\n transition: opacity 0.2s;\n }\n\n .hierarchy-row:hover .list-actions {\n opacity: 1;\n }\n\n /* Context Menu */\n .context-menu-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 999;\n }\n\n .context-menu {\n position: fixed;\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n box-shadow: var(--mj-shadow-md);\n min-width: 160px;\n padding: 4px 0;\n z-index: 1000;\n }\n\n .menu-item {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 10px 16px;\n background: none;\n border: none;\n text-align: left;\n font-size: 14px;\n color: var(--mj-text-primary);\n cursor: pointer;\n transition: background 0.15s;\n }\n\n .menu-item:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .menu-item.danger {\n color: var(--mj-status-error);\n }\n\n .menu-item.danger:hover {\n background: color-mix(in srgb, var(--mj-status-error) 15%, var(--mj-bg-surface));\n }\n\n .menu-divider {\n height: 1px;\n background: var(--mj-border-default);\n margin: 4px 0;\n }\n\n .menu-viewer-hint {\n padding: 10px 14px;\n font-size: 12px;\n color: var(--mj-text-muted);\n display: flex;\n align-items: center;\n gap: 8px;\n font-style: italic;\n }\n .menu-viewer-hint i { color: var(--mj-text-muted); }\n\n /* Modal Styles */\n .modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: var(--mj-bg-overlay);\n z-index: 1000;\n }\n\n .modal-dialog {\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background: var(--mj-bg-surface-card);\n border-radius: 12px;\n box-shadow: var(--mj-shadow-lg);\n width: 500px;\n max-width: 90vw;\n max-height: 90vh;\n overflow: hidden;\n z-index: 1001;\n }\n\n .confirm-dialog {\n width: 400px;\n }\n\n .modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 16px 20px;\n border-bottom: 1px solid var(--mj-border-default);\n }\n\n .modal-header h3 {\n margin: 0;\n font-size: 18px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .modal-close {\n background: none;\n border: none;\n padding: 4px 8px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n }\n\n .modal-close:hover {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n }\n\n .modal-body {\n padding: 20px;\n max-height: 60vh;\n overflow-y: auto;\n }\n\n .modal-body p {\n margin: 0 0 8px;\n color: var(--mj-text-primary);\n }\n\n .warning-text {\n color: var(--mj-status-error) !important;\n font-size: 13px;\n }\n\n .modal-footer {\n display: flex;\n gap: 12px;\n padding: 16px 20px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-sunken);\n }\n\n .btn-primary {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 20px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-primary:hover:not(:disabled) {\n background: var(--mj-brand-primary-hover);\n }\n\n .btn-primary:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n }\n\n .btn-secondary {\n padding: 10px 20px;\n background: var(--mj-bg-surface-card);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-secondary:hover:not(:disabled) {\n background: var(--mj-bg-surface-sunken);\n }\n\n .btn-danger {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 20px;\n background: var(--mj-status-error);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-danger:hover:not(:disabled) {\n background: color-mix(in srgb, var(--mj-status-error) 85%, black);\n }\n\n /* Form Styles */\n .form-group {\n margin-bottom: 16px;\n }\n\n .form-group:last-child {\n margin-bottom: 0;\n }\n\n .form-group label {\n display: block;\n margin-bottom: 6px;\n font-size: 13px;\n font-weight: 500;\n color: var(--mj-text-secondary);\n }\n\n .form-input {\n width: 100%;\n padding: 10px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n transition: border-color 0.2s, box-shadow 0.2s;\n box-sizing: border-box;\n }\n\n .form-input:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .form-input:disabled {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-muted);\n }\n\n textarea.form-input {\n resize: vertical;\n min-height: 80px;\n }\n\n select.form-input {\n cursor: pointer;\n }\n\n .custom-select-wrapper {\n position: relative;\n }\n\n /* Portal Dropdown */\n .entity-dropdown-portal {\n position: fixed;\n z-index: 10002;\n }\n\n .entity-dropdown-content {\n max-height: 200px;\n overflow-y: auto;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n box-shadow: var(--mj-shadow-md);\n }\n\n .entity-dropdown-content.open-above {\n position: absolute;\n bottom: 0;\n }\n\n .dropdown-item {\n padding: 10px 12px;\n cursor: pointer;\n transition: background 0.15s;\n font-size: 14px;\n color: var(--mj-text-primary);\n }\n\n .dropdown-item:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .dropdown-item:first-child {\n border-radius: 6px 6px 0 0;\n }\n\n .dropdown-item:last-child {\n border-radius: 0 0 6px 6px;\n }\n\n .dropdown-empty {\n padding: 10px 12px;\n color: var(--mj-text-muted);\n font-style: italic;\n }\n\n /* Responsive */\n @media (max-width: 768px) {\n .header-row {\n flex-direction: column;\n gap: 12px;\n align-items: stretch;\n }\n\n .btn-create {\n width: 100%;\n justify-content: center;\n }\n\n .header-actions {\n flex-direction: column;\n align-items: stretch;\n }\n\n .search-box {\n max-width: none;\n }\n\n .filter-group {\n width: 100%;\n }\n\n .filter-select {\n flex: 1;\n width: 100%;\n }\n\n .view-toggle-group {\n justify-content: center;\n }\n\n .lists-table {\n overflow-x: auto;\n }\n\n .col-entity, .col-items, .col-updated {\n display: none;\n }\n\n .lists-grid {\n grid-template-columns: 1fr;\n }\n\n .modal-dialog {\n width: 95vw;\n }\n }\n "] }]
2636
+ `, encapsulation: ViewEncapsulation.None, styles: ["\n :host {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n }\n\n /* Control bar: on mobile search grows so the icon-only Filter + view toggle\n stay on one line. On desktop search keeps its natural width. */\n @media (max-width: 768px) {\n mj-page-search {\n flex: 1;\n }\n }\n\n .lists-browse-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: var(--mj-bg-surface);\n overflow: hidden;\n }\n\n /* Header */\n .browse-header {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 16px 24px;\n background: var(--mj-bg-surface-card);\n border-bottom: 1px solid var(--mj-border-default);\n flex-shrink: 0;\n }\n\n .header-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .header-title {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n\n .header-title i {\n font-size: 24px;\n color: var(--mj-brand-primary);\n }\n\n .header-title h2 {\n margin: 0;\n font-size: 20px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .header-actions {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n }\n\n .search-box {\n position: relative;\n display: flex;\n align-items: center;\n flex: 1;\n min-width: 200px;\n max-width: 300px;\n }\n\n .search-box i.fa-search {\n position: absolute;\n left: 12px;\n color: var(--mj-text-muted);\n }\n\n .search-box input {\n padding: 8px 36px;\n border: 1px solid var(--mj-border-default);\n border-radius: 20px;\n font-size: 14px;\n width: 100%;\n transition: border-color 0.2s, box-shadow 0.2s;\n }\n\n .search-box input:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .clear-search {\n position: absolute;\n right: 8px;\n background: none;\n border: none;\n color: var(--mj-text-muted);\n cursor: pointer;\n }\n\n .filter-group {\n display: flex;\n align-items: center;\n gap: 6px;\n }\n\n .filter-group label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n }\n\n .filter-select {\n padding: 8px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n background: var(--mj-bg-surface-card);\n cursor: pointer;\n min-width: 120px;\n }\n\n .filter-select:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .sort-select {\n min-width: 140px;\n }\n\n .view-toggle-group {\n display: flex;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n overflow: hidden;\n }\n\n .view-toggle {\n padding: 8px 12px;\n background: var(--mj-bg-surface-card);\n border: none;\n border-right: 1px solid var(--mj-border-default);\n color: var(--mj-text-secondary);\n cursor: pointer;\n transition: all 0.2s;\n }\n\n .view-toggle:last-child {\n border-right: none;\n }\n\n .view-toggle:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .view-toggle.active {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n }\n\n .btn-create {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 16px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-create:hover {\n background: var(--mj-brand-primary-hover);\n }\n\n /* Loading */\n .loading-container {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 1;\n }\n\n /* Empty State */\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n flex: 1;\n padding: 48px 40px;\n text-align: center;\n max-width: 480px;\n margin: 0 auto;\n }\n\n .empty-state-icon-wrapper {\n position: relative;\n margin-bottom: 24px;\n }\n\n .empty-state-icon-wrapper .icon-bg {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 120px;\n height: 120px;\n border-radius: 50%;\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n }\n\n .empty-state-icon-wrapper > i {\n position: relative;\n font-size: 56px;\n color: var(--mj-brand-primary);\n z-index: 1;\n }\n\n .empty-state-icon-wrapper.search > i {\n font-size: 48px;\n color: var(--mj-text-disabled);\n }\n\n .empty-state h3 {\n margin: 0 0 12px;\n font-size: 22px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .empty-state p {\n margin: 0 0 8px;\n color: var(--mj-text-secondary);\n font-size: 15px;\n line-height: 1.5;\n }\n\n .empty-state p:last-of-type {\n margin-bottom: 24px;\n }\n\n .empty-hint {\n color: var(--mj-text-muted) !important;\n font-size: 13px !important;\n }\n\n .empty-state-features {\n display: flex;\n flex-direction: column;\n gap: 8px;\n margin-bottom: 28px;\n text-align: left;\n }\n\n .feature-item {\n display: flex;\n align-items: center;\n gap: 10px;\n font-size: 14px;\n color: var(--mj-text-secondary);\n }\n\n .feature-item i {\n font-size: 14px !important;\n color: var(--mj-status-success) !important;\n }\n\n .btn-create-large {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 14px 28px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 8px;\n font-size: 15px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s;\n box-shadow: 0 2px 8px color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n\n .btn-create-large:hover {\n background: var(--mj-brand-primary-hover);\n transform: translateY(-1px);\n box-shadow: 0 4px 12px color-mix(in srgb, var(--mj-brand-primary) 40%, transparent);\n }\n\n .btn-clear {\n padding: 10px 20px;\n background: var(--mj-bg-surface-sunken);\n border: none;\n border-radius: 6px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-clear:hover {\n background: var(--mj-border-default);\n }\n\n /* Content */\n .browse-content {\n flex: 1;\n overflow-y: auto;\n padding: 16px 24px;\n }\n\n .results-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n }\n\n .result-count {\n font-size: 14px;\n color: var(--mj-text-secondary);\n }\n\n .sort-options {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .sort-options label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n }\n\n /* Table View */\n .lists-table {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n overflow: hidden;\n box-shadow: var(--mj-shadow-sm);\n }\n\n .lists-table table {\n width: 100%;\n border-collapse: collapse;\n }\n\n .lists-table th {\n text-align: left;\n padding: 12px 16px;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n background: var(--mj-bg-surface-sunken);\n border-bottom: 1px solid var(--mj-border-default);\n }\n\n .lists-table td {\n padding: 12px 16px;\n border-bottom: 1px solid var(--mj-border-default);\n font-size: 14px;\n color: var(--mj-text-primary);\n }\n\n .list-row {\n cursor: pointer;\n transition: background 0.15s;\n outline: none;\n }\n\n .list-row:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .list-row:focus {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .list-row:focus-visible {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n box-shadow: inset 3px 0 0 var(--mj-brand-primary);\n }\n\n .list-row:last-child td {\n border-bottom: none;\n }\n\n .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n }\n\n .col-name { width: 30%; }\n .col-entity { width: 15%; }\n .col-items { width: 8%; text-align: center; }\n .col-sharing { width: 8%; text-align: center; }\n .col-owner { width: 14%; }\n .col-updated { width: 15%; }\n .col-actions { width: 10%; text-align: right; }\n\n /* Sharing indicators */\n .sharing-indicator {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: var(--mj-brand-primary);\n font-size: 13px;\n }\n\n .sharing-indicator i {\n font-size: 14px;\n }\n\n .share-count {\n font-weight: 500;\n }\n\n .sharing-private {\n color: var(--mj-text-muted);\n font-size: 13px;\n }\n\n .sharing-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n border-radius: 50%;\n color: var(--mj-brand-primary);\n font-size: 11px;\n }\n\n .card-footer-right {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .name-cell {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n\n .list-icon {\n width: 36px;\n height: 36px;\n border-radius: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mj-text-inverse);\n font-size: 14px;\n flex-shrink: 0;\n }\n\n .name-content {\n display: flex;\n flex-direction: column;\n min-width: 0;\n }\n\n .list-name {\n font-weight: 500;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .list-desc {\n font-size: 12px;\n color: var(--mj-text-muted);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .entity-badge {\n display: inline-block;\n padding: 2px 8px;\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n border-radius: 4px;\n font-size: 12px;\n color: var(--mj-brand-primary-hover);\n }\n\n .owner-name {\n color: var(--mj-text-secondary);\n }\n\n .owner-name.is-me {\n color: var(--mj-brand-primary);\n font-weight: 500;\n }\n\n .action-btn {\n background: none;\n border: none;\n padding: 6px 10px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n transition: all 0.15s;\n }\n\n .action-btn:hover {\n background: var(--mj-border-default);\n color: var(--mj-text-secondary);\n }\n\n /* Card View */\n .lists-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n gap: 16px;\n }\n\n .list-card {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n box-shadow: var(--mj-shadow-sm);\n overflow: hidden;\n cursor: pointer;\n transition: transform 0.2s, box-shadow 0.2s, outline 0.1s;\n outline: 2px solid transparent;\n }\n\n .list-card:hover {\n transform: translateY(-2px);\n box-shadow: var(--mj-shadow-md);\n }\n\n .list-card:focus {\n outline: 2px solid var(--mj-brand-primary);\n outline-offset: 2px;\n }\n\n .list-card:focus:not(:focus-visible) {\n outline: none;\n }\n\n .list-card:focus-visible {\n outline: 2px solid var(--mj-brand-primary);\n outline-offset: 2px;\n }\n\n .card-header {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n padding: 16px 16px 0;\n }\n\n .card-icon {\n width: 40px;\n height: 40px;\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mj-text-inverse);\n font-size: 18px;\n }\n\n .menu-btn {\n background: none;\n border: none;\n padding: 4px 8px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n }\n\n .menu-btn:hover {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n }\n\n .card-body {\n padding: 12px 16px;\n }\n\n .card-title {\n margin: 0 0 4px;\n font-size: 16px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .card-description {\n margin: 0 0 12px;\n font-size: 13px;\n color: var(--mj-text-secondary);\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n }\n\n .card-meta {\n display: flex;\n gap: 16px;\n }\n\n .meta-item {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n /* Tag chips on a card. Stop-propagation is set on the wrapper so\n clicks on chips don't open the underlying list. */\n .card-tags {\n margin-top: 8px;\n }\n\n /* Favorite star on cards (Phase 5.3). */\n .favorite-btn {\n background: none;\n border: none;\n padding: 4px;\n margin: -4px;\n cursor: pointer;\n color: var(--mj-text-muted);\n font-size: 14px;\n border-radius: 4px;\n transition: color 0.12s ease, background 0.12s ease;\n }\n\n .favorite-btn:hover {\n background: var(--mj-bg-surface-card);\n color: var(--mj-status-warning);\n }\n\n .favorite-btn--active {\n color: var(--mj-status-warning);\n }\n\n /* Favorites-only toggle in the toolbar. */\n .favorite-filter-toggle {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 6px 12px;\n background: none;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 12.5px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n }\n\n .favorite-filter-toggle:hover {\n border-color: var(--mj-status-warning);\n color: var(--mj-status-warning);\n }\n\n .favorite-filter-toggle--active {\n background: color-mix(in srgb, var(--mj-status-warning) 12%, var(--mj-bg-surface));\n border-color: var(--mj-status-warning);\n color: var(--mj-status-warning);\n font-weight: 600;\n }\n\n /* Active-tag filter row above the grid (Phase 4.3). */\n .tag-filter-row {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 8px;\n padding: 10px 12px;\n margin-bottom: 12px;\n background: var(--mj-bg-surface-sunken);\n border: 1px dashed var(--mj-border-default);\n border-radius: 8px;\n font-size: 12.5px;\n }\n\n .tag-filter-row__label {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n color: var(--mj-text-muted);\n font-weight: 500;\n }\n\n .tag-filter-chip {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 2px 10px;\n border-radius: 999px;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n border: 1px solid var(--mj-brand-primary);\n font-size: 11.5px;\n cursor: pointer;\n }\n\n .tag-filter-chip:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 20%, var(--mj-bg-surface));\n }\n\n .tag-filter-row__clear {\n background: none;\n border: none;\n color: var(--mj-text-link);\n font-size: 11.5px;\n cursor: pointer;\n margin-left: auto;\n }\n\n .tag-filter-row__clear:hover {\n text-decoration: underline;\n }\n\n .card-footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 12px 16px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-sunken);\n }\n\n .owner-tag {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 12px;\n color: var(--mj-text-secondary);\n }\n\n .owner-tag.is-me {\n color: var(--mj-brand-primary);\n }\n\n .date-info {\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n /* Hierarchy View */\n .category-tree {\n display: flex;\n flex-direction: column;\n gap: 8px;\n }\n\n .category-section {\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .category-header {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 12px 16px;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .category-header:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .category-header i:first-child {\n width: 16px;\n text-align: center;\n color: var(--mj-text-muted);\n }\n\n .category-header .fa-folder,\n .category-header .fa-folder-open {\n color: var(--mj-status-warning);\n }\n\n .category-header.uncategorized .fa-inbox {\n color: var(--mj-text-muted);\n }\n\n .category-name {\n flex: 1;\n font-weight: 500;\n color: var(--mj-text-primary);\n }\n\n .category-count {\n font-size: 12px;\n color: var(--mj-text-muted);\n background: var(--mj-bg-surface-sunken);\n padding: 2px 8px;\n border-radius: 10px;\n }\n\n .category-lists {\n border-top: 1px solid var(--mj-border-default);\n }\n\n .hierarchy-row {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px 16px 12px 40px;\n cursor: pointer;\n transition: background 0.2s;\n outline: none;\n }\n\n .hierarchy-row:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .hierarchy-row:focus {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .hierarchy-row:focus-visible {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n box-shadow: inset 3px 0 0 var(--mj-brand-primary);\n }\n\n .list-info {\n flex: 1;\n min-width: 0;\n }\n\n .list-meta {\n font-size: 12px;\n color: var(--mj-text-muted);\n }\n\n .list-actions {\n display: flex;\n gap: 4px;\n opacity: 0;\n transition: opacity 0.2s;\n }\n\n .hierarchy-row:hover .list-actions {\n opacity: 1;\n }\n\n /* Context Menu */\n .context-menu-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 999;\n }\n\n .context-menu {\n position: fixed;\n background: var(--mj-bg-surface-card);\n border-radius: 8px;\n box-shadow: var(--mj-shadow-md);\n min-width: 160px;\n padding: 4px 0;\n z-index: 1000;\n }\n\n .menu-item {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 10px 16px;\n background: none;\n border: none;\n text-align: left;\n font-size: 14px;\n color: var(--mj-text-primary);\n cursor: pointer;\n transition: background 0.15s;\n }\n\n .menu-item:hover {\n background: var(--mj-bg-surface-sunken);\n }\n\n .menu-item.danger {\n color: var(--mj-status-error);\n }\n\n .menu-item.danger:hover {\n background: color-mix(in srgb, var(--mj-status-error) 15%, var(--mj-bg-surface));\n }\n\n .menu-divider {\n height: 1px;\n background: var(--mj-border-default);\n margin: 4px 0;\n }\n\n .menu-viewer-hint {\n padding: 10px 14px;\n font-size: 12px;\n color: var(--mj-text-muted);\n display: flex;\n align-items: center;\n gap: 8px;\n font-style: italic;\n }\n .menu-viewer-hint i { color: var(--mj-text-muted); }\n\n /* Modal Styles */\n .modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: var(--mj-bg-overlay);\n z-index: 1000;\n }\n\n .modal-dialog {\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background: var(--mj-bg-surface-card);\n border-radius: 12px;\n box-shadow: var(--mj-shadow-lg);\n width: 500px;\n max-width: 90vw;\n max-height: 90vh;\n overflow: hidden;\n z-index: 1001;\n }\n\n .confirm-dialog {\n width: 400px;\n }\n\n .modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 16px 20px;\n border-bottom: 1px solid var(--mj-border-default);\n }\n\n .modal-header h3 {\n margin: 0;\n font-size: 18px;\n font-weight: 600;\n color: var(--mj-text-primary);\n }\n\n .modal-close {\n background: none;\n border: none;\n padding: 4px 8px;\n color: var(--mj-text-muted);\n cursor: pointer;\n border-radius: 4px;\n }\n\n .modal-close:hover {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n }\n\n .modal-body {\n padding: 20px;\n max-height: 60vh;\n overflow-y: auto;\n }\n\n .modal-body p {\n margin: 0 0 8px;\n color: var(--mj-text-primary);\n }\n\n .warning-text {\n color: var(--mj-status-error) !important;\n font-size: 13px;\n }\n\n .modal-footer {\n display: flex;\n gap: 12px;\n padding: 16px 20px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-sunken);\n }\n\n .btn-primary {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 20px;\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-primary:hover:not(:disabled) {\n background: var(--mj-brand-primary-hover);\n }\n\n .btn-primary:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n }\n\n .btn-secondary {\n padding: 10px 20px;\n background: var(--mj-bg-surface-card);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-secondary:hover:not(:disabled) {\n background: var(--mj-bg-surface-sunken);\n }\n\n .btn-danger {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 20px;\n background: var(--mj-status-error);\n color: var(--mj-text-inverse);\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background 0.2s;\n }\n\n .btn-danger:hover:not(:disabled) {\n background: color-mix(in srgb, var(--mj-status-error) 85%, black);\n }\n\n /* Form Styles */\n .form-group {\n margin-bottom: 16px;\n }\n\n .form-group:last-child {\n margin-bottom: 0;\n }\n\n .form-group label {\n display: block;\n margin-bottom: 6px;\n font-size: 13px;\n font-weight: 500;\n color: var(--mj-text-secondary);\n }\n\n .form-input {\n width: 100%;\n padding: 10px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n transition: border-color 0.2s, box-shadow 0.2s;\n box-sizing: border-box;\n }\n\n .form-input:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n }\n\n .form-input:disabled {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-muted);\n }\n\n textarea.form-input {\n resize: vertical;\n min-height: 80px;\n }\n\n select.form-input {\n cursor: pointer;\n }\n\n .custom-select-wrapper {\n position: relative;\n }\n\n /* Portal Dropdown */\n .entity-dropdown-portal {\n position: fixed;\n z-index: 10002;\n }\n\n .entity-dropdown-content {\n max-height: 200px;\n overflow-y: auto;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n box-shadow: var(--mj-shadow-md);\n }\n\n .entity-dropdown-content.open-above {\n position: absolute;\n bottom: 0;\n }\n\n .dropdown-item {\n padding: 10px 12px;\n cursor: pointer;\n transition: background 0.15s;\n font-size: 14px;\n color: var(--mj-text-primary);\n }\n\n .dropdown-item:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 15%, var(--mj-bg-surface));\n }\n\n .dropdown-item:first-child {\n border-radius: 6px 6px 0 0;\n }\n\n .dropdown-item:last-child {\n border-radius: 0 0 6px 6px;\n }\n\n .dropdown-empty {\n padding: 10px 12px;\n color: var(--mj-text-muted);\n font-style: italic;\n }\n\n /* Responsive */\n @media (max-width: 768px) {\n .header-row {\n flex-direction: column;\n gap: 12px;\n align-items: stretch;\n }\n\n .btn-create {\n width: 100%;\n justify-content: center;\n }\n\n .header-actions {\n flex-direction: column;\n align-items: stretch;\n }\n\n .search-box {\n max-width: none;\n }\n\n .filter-group {\n width: 100%;\n }\n\n .filter-select {\n flex: 1;\n width: 100%;\n }\n\n .view-toggle-group {\n justify-content: center;\n }\n\n .lists-table {\n overflow-x: auto;\n }\n\n .col-entity, .col-items, .col-updated {\n display: none;\n }\n\n .lists-grid {\n grid-template-columns: 1fr;\n }\n\n .modal-dialog {\n width: 95vw;\n }\n }\n "] }]
2678
2637
  }], () => [{ type: i0.ChangeDetectorRef }, { type: i1.TabService }, { type: i2.MJNotificationService }, { type: i0.ElementRef }, { type: i3.ListSharingService }], { onDocumentClick: [{
2679
2638
  type: HostListener,
2680
2639
  args: ['document:click', ['$event']]
@@ -2682,5 +2641,5 @@ export { ListsBrowseResource };
2682
2641
  type: HostListener,
2683
2642
  args: ['document:keydown.escape']
2684
2643
  }] }); })();
2685
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ListsBrowseResource, { className: "ListsBrowseResource", filePath: "src/Lists/components/lists-browse-resource.component.ts", lineNumber: 1866 }); })();
2644
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ListsBrowseResource, { className: "ListsBrowseResource", filePath: "src/Lists/components/lists-browse-resource.component.ts", lineNumber: 1846 }); })();
2686
2645
  //# sourceMappingURL=lists-browse-resource.component.js.map