11const webviews = require ( 'webviews.js' )
2+ const settings = require ( 'util/settings/settings.js' )
23const PasswordManagers = require ( 'passwordManager/passwordManager.js' )
34const modalMode = require ( 'modalMode.js' )
45
@@ -56,6 +57,30 @@ const passwordViewer = {
5657
5758 return container
5859 } ,
60+ createNeverSaveDomainElement : function ( domain ) {
61+ var container = document . createElement ( 'div' )
62+
63+ var domainEl = document . createElement ( 'span' )
64+ domainEl . className = 'domain-name'
65+ domainEl . textContent = domain
66+ container . appendChild ( domainEl )
67+
68+ var descriptionEl = document . createElement ( 'span' )
69+ descriptionEl . className = 'description'
70+ descriptionEl . textContent = l ( 'savedPasswordsNeverSavedLabel' )
71+ container . appendChild ( descriptionEl )
72+
73+ var deleteButton = document . createElement ( 'button' )
74+ deleteButton . className = 'i carbon:trash-can'
75+ container . appendChild ( deleteButton )
76+
77+ deleteButton . addEventListener ( 'click' , function ( ) {
78+ settings . set ( 'passwordsNeverSaveDomains' , settings . get ( 'passwordsNeverSaveDomains' ) . filter ( d => d !== domain ) )
79+ container . remove ( )
80+ } )
81+
82+ return container
83+ } ,
5984 show : function ( ) {
6085 PasswordManagers . getConfiguredPasswordManager ( ) . then ( function ( manager ) {
6186 if ( ! manager . getAllCredentials ) {
@@ -73,7 +98,13 @@ const passwordViewer = {
7398 passwordViewer . listContainer . appendChild ( passwordViewer . createCredentialListElement ( cred ) )
7499 } )
75100
76- passwordViewer . emptyHeading . hidden = ( credentials . length !== 0 )
101+ const neverSaveDomains = settings . get ( 'passwordsNeverSaveDomains' ) || [ ]
102+
103+ neverSaveDomains . forEach ( function ( domain ) {
104+ passwordViewer . listContainer . appendChild ( passwordViewer . createNeverSaveDomainElement ( domain ) )
105+ } )
106+
107+ passwordViewer . emptyHeading . hidden = ( credentials . length + neverSaveDomains . length !== 0 )
77108 } )
78109 } )
79110 } ,
0 commit comments