message: Suggest the current host as an OIDC issuer.
  Closes
diff: @@ -1048,7 +1048,7 @@ export function renderSignInPopup (dom: HTMLDocument) {
  issuerBottonLabel.innerText = 'Or pick an identity provider from the list below:'
  issuerBottonLabel.setAttribute('style', 'color: #888')
  issuerButtonContainer.appendChild(issuerBottonLabel)
  - DEFAULT_ISSUERS.forEach((issuerInfo) => {
  + getSuggestedIssuers().forEach((issuerInfo) => {
  const issuerButton = dom.createElement('button')
  issuerButton.innerText = issuerInfo.name
  issuerButton.setAttribute('style', 'height: 38px; margin-top: 10px')
  @@ -1060,6 +1060,28 @@ export function renderSignInPopup (dom: HTMLDocument) {
  issuerPopupBox.appendChild(issuerButtonContainer)
  }
  +/**
  + * @returns - A list of suggested OIDC issuers
  + */
  +function getSuggestedIssuers (): { name: string, uri: string }[] {
  + // Suggest a default list of OIDC issuers
  + const issuers = [...DEFAULT_ISSUERS]
  +
  + // Suggest the current host if not already included
  + const { host, origin } = new URL(location.href)
  + const hosts = issuers.map(({ uri }) => new URL(uri).host)
  + if (!hosts.includes(host) && !hosts.some(existing => isSubdomainOf(host, existing))) {
  + issuers.unshift({ name: host, uri: origin })
  + }
  +
  + return issuers
  +}
  +
  +function isSubdomainOf (subdomain: string, domain: string): boolean {
  + const dot = subdomain.length - domain.length - 1
  + return dot > 0 && subdomain[dot] === '.' && subdomain.endsWith(domain)
  +}
  +
  /**
  * @returns {Promise<string|null>} Resolves with WebID URI or null
  */
  