@konemono/nostr-login-components 1.4.2 → 1.4.4

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 (50) hide show
  1. package/dist/components/button-base2.js.map +1 -1
  2. package/dist/components/css.js +1 -1
  3. package/dist/components/nl-auth2.js.map +1 -1
  4. package/dist/components/nl-banner2.js +5 -2
  5. package/dist/components/nl-banner2.js.map +1 -1
  6. package/dist/components/nl-change-account2.js.map +1 -1
  7. package/dist/components/nl-confirm-logout2.js.map +1 -1
  8. package/dist/components/nl-connect2.js.map +1 -1
  9. package/dist/components/nl-dialog2.js.map +1 -1
  10. package/dist/components/nl-iframe2.js.map +1 -1
  11. package/dist/components/nl-import-flow2.js.map +1 -1
  12. package/dist/components/nl-info-extension2.js +1 -1
  13. package/dist/components/nl-info-extension2.js.map +1 -1
  14. package/dist/components/nl-info2.js +1 -1
  15. package/dist/components/nl-info2.js.map +1 -1
  16. package/dist/components/nl-loading2.js +1 -1
  17. package/dist/components/nl-loading2.js.map +1 -1
  18. package/dist/components/nl-local-signup2.js +1 -1
  19. package/dist/components/nl-local-signup2.js.map +1 -1
  20. package/dist/components/nl-nip46-relay-settings2.js +2 -2
  21. package/dist/components/nl-nip46-relay-settings2.js.map +1 -1
  22. package/dist/components/nl-otp-migrate2.js +1 -1
  23. package/dist/components/nl-otp-migrate2.js.map +1 -1
  24. package/dist/components/nl-previously-logged2.js +3 -3
  25. package/dist/components/nl-previously-logged2.js.map +1 -1
  26. package/dist/components/nl-select2.js.map +1 -1
  27. package/dist/components/nl-signin-bunker-url2.js +1 -1
  28. package/dist/components/nl-signin-bunker-url2.js.map +1 -1
  29. package/dist/components/nl-signin-connection-string2.js +1 -1
  30. package/dist/components/nl-signin-connection-string2.js.map +1 -1
  31. package/dist/components/nl-signin-nsec2.js +1 -1
  32. package/dist/components/nl-signin-nsec2.js.map +1 -1
  33. package/dist/components/nl-signin-otp2.js +1 -1
  34. package/dist/components/nl-signin-otp2.js.map +1 -1
  35. package/dist/components/nl-signin-read-only2.js +1 -1
  36. package/dist/components/nl-signin-read-only2.js.map +1 -1
  37. package/dist/components/nl-signin2.js +1 -1
  38. package/dist/components/nl-signin2.js.map +1 -1
  39. package/dist/components/nl-signup2.js +1 -1
  40. package/dist/components/nl-signup2.js.map +1 -1
  41. package/dist/components/nl-welcome-signin2.js +1 -1
  42. package/dist/components/nl-welcome-signin2.js.map +1 -1
  43. package/dist/components/nl-welcome-signup2.js +1 -1
  44. package/dist/components/nl-welcome-signup2.js.map +1 -1
  45. package/dist/components/nl-welcome2.js +1 -1
  46. package/dist/components/nl-welcome2.js.map +1 -1
  47. package/dist/components/ns-login-status.js +1 -1
  48. package/dist/types/components/nl-banner/nl-banner.d.ts +1 -0
  49. package/dist/types/components.d.ts +2 -0
  50. package/package.json +1 -1
@@ -1 +1 @@
1
- {"file":"nl-change-account2.js","mappings":"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","names":[],"sources":["src/components/nl-change-account/nl-change-account.css?tag=nl-change-account","src/components/nl-change-account/nl-change-account.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h, Listen, Prop, State, Watch, Element, Event, EventEmitter } from '@stencil/core';\nimport { Info } from '@/types';\n\n@Component({\n tag: 'nl-change-account',\n styleUrl: 'nl-change-account.css',\n shadow: false,\n})\nexport class NLChangeAccount {\n @State() isOpen: boolean = false;\n @State() options: Info[] = [];\n @Prop() accounts: Info[] = [];\n @Prop() currentAccount: Info = null;\n\n @Element() element: HTMLElement;\n @Event() nlOpenWelcomeModal: EventEmitter<string>;\n @Event() nlSwitchAccount: EventEmitter<Info>;\n\n buttonRef: HTMLButtonElement;\n ulRef: HTMLUListElement;\n wrapperRef: HTMLDivElement;\n\n @Listen('click', { target: 'window' })\n handleWindowClick() {\n if (this.wrapperRef.querySelector('.listClass')) {\n this.isOpen = false;\n }\n }\n\n toggleDropdown() {\n this.isOpen = !this.isOpen;\n this.calculateDropdownPosition();\n }\n\n @State() mode: boolean = false;\n @Prop() darkMode: boolean = false;\n @State() themeState: 'default' | 'ocean' | 'lemonade' | 'purple' = 'default';\n @Prop() theme: 'default' | 'ocean' | 'lemonade' | 'purple' = 'default';\n @Watch('theme')\n watchPropHandler(newValue: 'default' | 'ocean' | 'lemonade' | 'purple') {\n this.themeState = newValue;\n }\n\n @Watch('darkMode')\n watchModeHandler(newValue: boolean) {\n this.mode = newValue;\n }\n\n @Watch('accounts')\n watchAccountsHandler(newValue: Info[]) {\n this.options = newValue;\n }\n\n connectedCallback() {\n this.themeState = this.theme;\n this.mode = this.darkMode;\n }\n\n calculateDropdownPosition() {\n if (this.isOpen && this.buttonRef) {\n const buttonRect = this.buttonRef.getBoundingClientRect();\n this.ulRef.style.top = `${buttonRect.height}px`;\n }\n }\n\n handleChange(el: Info) {\n this.nlSwitchAccount.emit(el);\n }\n\n handleOpenModal() {\n this.nlOpenWelcomeModal.emit();\n }\n\n render() {\n const listClass = `${this.isOpen ? 'listClass flex flex-col gap-2' : 'hidden'} w-full nl-select-list absolute z-10 left-0 shadow-md rounded-lg p-2 mt-1 after:h-4 after:absolute after:-bottom-4 after:start-0 after:w-full before:h-4 before:absolute before:-top-4 before:start-0 before:w-full`;\n const arrowClass = `${this.isOpen ? 'rotate-180' : 'rotate-0'} duration-300 flex-shrink-0 w-4 h-4 text-gray-500`;\n const filteredOptions =\n this.options && this.currentAccount ? this.options.filter(el => el.pubkey !== this.currentAccount.pubkey || el.authMethod !== this.currentAccount.authMethod) : [];\n\n return (\n <div class={`theme-${this.themeState}`}>\n <div class=\"relative\" ref={el => (this.wrapperRef = el)}>\n <button\n ref={el => (this.buttonRef = el)}\n onClick={() => this.toggleDropdown()}\n type=\"button\"\n class=\"nl-select peer py-3 px-4 flex items-center w-full justify-between border-transparent rounded-lg text-sm disabled:opacity-50 disabled:pointer-events-none dark:border-transparent\"\n >\n <span class=\"text-gray-500\">Switch profile</span>\n <svg\n class={arrowClass}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n </button>\n\n <ul ref={el => (this.ulRef = el)} class={listClass}>\n {this.options &&\n filteredOptions.map(el => {\n const isShowImg = Boolean(el?.picture);\n const userName = el.name || el.nip05 || el.pubkey;\n const isShowUserName = Boolean(userName);\n\n return (\n <li onClick={() => this.handleChange(el)} class=\"nl-select-option flex cursor-pointer items-center gap-x-3.5 py-2 px-3 rounded-lg text-sm\">\n <div class=\"uppercase font-bold w-full max-w-6 h-6 rounded-full border border-gray-400 flex justify-center items-center\">\n {isShowImg ? (\n <img class=\"w-full rounded-full\" src={el.picture} alt=\"Logo\" />\n ) : isShowUserName ? (\n userName[0]\n ) : (\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" class=\"w-full\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M17.982 18.725A7.488 7.488 0 0 0 12 15.75a7.488 7.488 0 0 0-5.982 2.975m11.963 0a9 9 0 1 0-11.963 0m11.963 0A8.966 8.966 0 0 1 12 21a8.966 8.966 0 0 1-5.982-2.275M15 9.75a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z\"\n />\n </svg>\n )}\n </div>\n {/*<div class=\"truncate overflow-hidden w-full\">{userName}</div>*/}\n\n <div class=\"overflow-hidden flex flex-col w-full\">\n <div class=\"truncate overflow-hidden\">{userName}</div>\n <nl-login-status info={el} />\n </div>\n </li>\n );\n })}\n <li class=\"first:pt-0 pt-2 border-t-[1px] first:border-none border-gray-300\">\n <div onClick={() => this.handleOpenModal()} class=\"nl-select-option flex cursor-pointer items-center gap-x-3.5 py-2 px-3 rounded-lg text-sm\">\n <div class=\"uppercase font-bold w-6 h-6 rounded-full border border-gray-400 flex justify-center items-center\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" class=\"w-4 h-4\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 4.5v15m7.5-7.5h-15\" />\n </svg>\n </div>\n Add profile\n </div>\n </li>\n </ul>\n </div>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-change-account2.js","mappings":"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","names":[],"sources":["src/components/nl-change-account/nl-change-account.css?tag=nl-change-account","src/components/nl-change-account/nl-change-account.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h, Listen, Prop, State, Watch, Element, Event, EventEmitter } from '@stencil/core';\nimport { Info } from '@/types';\n\n@Component({\n tag: 'nl-change-account',\n styleUrl: 'nl-change-account.css',\n shadow: false,\n})\nexport class NLChangeAccount {\n @State() isOpen: boolean = false;\n @State() options: Info[] = [];\n @Prop() accounts: Info[] = [];\n @Prop() currentAccount: Info = null;\n\n @Element() element: HTMLElement;\n @Event() nlOpenWelcomeModal: EventEmitter<string>;\n @Event() nlSwitchAccount: EventEmitter<Info>;\n\n buttonRef: HTMLButtonElement;\n ulRef: HTMLUListElement;\n wrapperRef: HTMLDivElement;\n\n @Listen('click', { target: 'window' })\n handleWindowClick() {\n if (this.wrapperRef.querySelector('.listClass')) {\n this.isOpen = false;\n }\n }\n\n toggleDropdown() {\n this.isOpen = !this.isOpen;\n this.calculateDropdownPosition();\n }\n\n @State() mode: boolean = false;\n @Prop() darkMode: boolean = false;\n @State() themeState: 'default' | 'ocean' | 'lemonade' | 'purple' = 'default';\n @Prop() theme: 'default' | 'ocean' | 'lemonade' | 'purple' = 'default';\n @Watch('theme')\n watchPropHandler(newValue: 'default' | 'ocean' | 'lemonade' | 'purple') {\n this.themeState = newValue;\n }\n\n @Watch('darkMode')\n watchModeHandler(newValue: boolean) {\n this.mode = newValue;\n }\n\n @Watch('accounts')\n watchAccountsHandler(newValue: Info[]) {\n this.options = newValue;\n }\n\n connectedCallback() {\n this.themeState = this.theme;\n this.mode = this.darkMode;\n }\n\n calculateDropdownPosition() {\n if (this.isOpen && this.buttonRef) {\n const buttonRect = this.buttonRef.getBoundingClientRect();\n this.ulRef.style.top = `${buttonRect.height}px`;\n }\n }\n\n handleChange(el: Info) {\n this.nlSwitchAccount.emit(el);\n }\n\n handleOpenModal() {\n this.nlOpenWelcomeModal.emit();\n }\n\n render() {\n const listClass = `${this.isOpen ? 'listClass flex flex-col gap-2' : 'hidden'} w-full nl-select-list absolute z-10 left-0 shadow-md rounded-lg p-2 mt-1 after:h-4 after:absolute after:-bottom-4 after:start-0 after:w-full before:h-4 before:absolute before:-top-4 before:start-0 before:w-full`;\n const arrowClass = `${this.isOpen ? 'rotate-180' : 'rotate-0'} duration-300 flex-shrink-0 w-4 h-4 text-gray-500`;\n const filteredOptions =\n this.options && this.currentAccount ? this.options.filter(el => el.pubkey !== this.currentAccount.pubkey || el.authMethod !== this.currentAccount.authMethod) : [];\n\n return (\n <div class={`theme-${this.themeState}`}>\n <div class=\"relative\" ref={el => (this.wrapperRef = el)}>\n <button\n ref={el => (this.buttonRef = el)}\n onClick={() => this.toggleDropdown()}\n type=\"button\"\n class=\"nl-select peer py-3 px-4 flex items-center w-full justify-between border-transparent rounded-lg text-sm disabled:opacity-50 disabled:pointer-events-none dark:border-transparent\"\n >\n <span class=\"text-gray-500\">Switch profile</span>\n <svg\n class={arrowClass}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n </button>\n\n <ul ref={el => (this.ulRef = el)} class={listClass}>\n {this.options &&\n filteredOptions.map(el => {\n const isShowImg = Boolean(el?.picture);\n const userName = el.name || el.nip05 || el.pubkey;\n const isShowUserName = Boolean(userName);\n\n return (\n <li onClick={() => this.handleChange(el)} class=\"nl-select-option flex cursor-pointer items-center gap-x-3.5 py-2 px-3 rounded-lg text-sm\">\n <div class=\"uppercase font-bold w-full max-w-6 h-6 rounded-full border border-gray-400 flex justify-center items-center\">\n {isShowImg ? (\n <img class=\"w-full rounded-full\" src={el.picture} alt=\"Logo\" />\n ) : isShowUserName ? (\n userName[0]\n ) : (\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" class=\"w-full\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M17.982 18.725A7.488 7.488 0 0 0 12 15.75a7.488 7.488 0 0 0-5.982 2.975m11.963 0a9 9 0 1 0-11.963 0m11.963 0A8.966 8.966 0 0 1 12 21a8.966 8.966 0 0 1-5.982-2.275M15 9.75a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z\"\n />\n </svg>\n )}\n </div>\n {/*<div class=\"truncate overflow-hidden w-full\">{userName}</div>*/}\n\n <div class=\"overflow-hidden flex flex-col w-full\">\n <div class=\"truncate overflow-hidden\">{userName}</div>\n <nl-login-status info={el} />\n </div>\n </li>\n );\n })}\n <li class=\"first:pt-0 pt-2 border-t-[1px] first:border-none border-gray-300\">\n <div onClick={() => this.handleOpenModal()} class=\"nl-select-option flex cursor-pointer items-center gap-x-3.5 py-2 px-3 rounded-lg text-sm\">\n <div class=\"uppercase font-bold w-6 h-6 rounded-full border border-gray-400 flex justify-center items-center\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" class=\"w-4 h-4\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 4.5v15m7.5-7.5h-15\" />\n </svg>\n </div>\n Add profile\n </div>\n </li>\n </ul>\n </div>\n </div>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"nl-confirm-logout2.js","mappings":";;;;;AAAA,MAAM,kBAAkB,GAAG,kr3CAAkr3C,CAAC;AAC9s3C,8BAAe,kBAAkB;;MCQpB,eAAe;;;;;;;0BACL,cAAc;2BACb,6HAA6H;;IAKnJ,YAAY;QACV,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;IAED,YAAY;QACV,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;IAED,YAAY;QACV,KAAK,CAAC,IAAI,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;KAC3C;IAED,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,2DAAI,KAAK,EAAC,yCAAyC,IAAE,IAAI,CAAC,UAAU,CAAM,EAC1E,0DAAG,KAAK,EAAC,qEAAqE,IAAE,IAAI,CAAC,WAAW,CAAK,EAErG,4DAAK,KAAK,EAAC,+CAA+C,IAExD,oEAAa,OAAO,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAC,aAAa,EAAC,KAAK,EAAC,UAAU,GAAG,EAC3F,oEAAa,OAAO,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAC,MAAM,EAAC,QAAQ,EAAC,wBAAwB,GAAG,CAC9F,CACF,EACN;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-confirm-logout/nl-confirm-logout.css?tag=nl-confirm-logout","src/components/nl-confirm-logout/nl-confirm-logout.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, Prop, h } from '@stencil/core';\nimport { CURRENT_MODULE, METHOD_MODULE } from '@/types';\nimport { state } from '@/store';\n\n@Component({\n tag: 'nl-confirm-logout',\n styleUrl: 'nl-confirm-logout.css',\n shadow: false,\n})\nexport class NlConfirmLogout {\n @Prop() titleModal = 'Delete keys?';\n @Prop() description = 'Your profile keys are stored in this browser tab and will be deleted if you log out, and your profile will be inaccessible.';\n @Event() nlLogoutBanner: EventEmitter<string>;\n @Event() nlBackUpModal: EventEmitter<string>;\n @Event() nlCloseModal: EventEmitter;\n\n handleLogout() {\n this.nlLogoutBanner.emit(METHOD_MODULE.LOGOUT);\n this.nlCloseModal.emit();\n }\n\n handleCancel() {\n this.nlCloseModal.emit();\n }\n\n handleBackUp() {\n state.path = [CURRENT_MODULE.IMPORT_FLOW];\n }\n\n render() {\n return (\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-4xl\">{this.titleModal}</h1>\n <p class=\"nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto\">{this.description}</p>\n\n <div class=\"mt-3 ml-auto mr-auto w-60 flex flex-col gap-2\">\n {/* <button-base onClick={() => this.handleCancel()} titleBtn=\"Cancel\" /> */}\n <button-base onClick={() => this.handleBackUp()} titleBtn=\"Backup keys\" theme=\"lemonade\" />\n <button-base onClick={() => this.handleLogout()} theme=\"crab\" titleBtn=\"Logout and delete keys\" />\n </div>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-confirm-logout2.js","mappings":";;;;;AAAA,MAAM,kBAAkB,GAAG,ks3CAAks3C,CAAC;AAC9t3C,8BAAe,kBAAkB;;MCQpB,eAAe;;;;;;;0BACL,cAAc;2BACb,6HAA6H;;IAKnJ,YAAY;QACV,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;IAED,YAAY;QACV,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;IAED,YAAY;QACV,KAAK,CAAC,IAAI,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;KAC3C;IAED,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,2DAAI,KAAK,EAAC,yCAAyC,IAAE,IAAI,CAAC,UAAU,CAAM,EAC1E,0DAAG,KAAK,EAAC,qEAAqE,IAAE,IAAI,CAAC,WAAW,CAAK,EAErG,4DAAK,KAAK,EAAC,+CAA+C,IAExD,oEAAa,OAAO,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAC,aAAa,EAAC,KAAK,EAAC,UAAU,GAAG,EAC3F,oEAAa,OAAO,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAC,MAAM,EAAC,QAAQ,EAAC,wBAAwB,GAAG,CAC9F,CACF,EACN;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-confirm-logout/nl-confirm-logout.css?tag=nl-confirm-logout","src/components/nl-confirm-logout/nl-confirm-logout.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, Prop, h } from '@stencil/core';\nimport { CURRENT_MODULE, METHOD_MODULE } from '@/types';\nimport { state } from '@/store';\n\n@Component({\n tag: 'nl-confirm-logout',\n styleUrl: 'nl-confirm-logout.css',\n shadow: false,\n})\nexport class NlConfirmLogout {\n @Prop() titleModal = 'Delete keys?';\n @Prop() description = 'Your profile keys are stored in this browser tab and will be deleted if you log out, and your profile will be inaccessible.';\n @Event() nlLogoutBanner: EventEmitter<string>;\n @Event() nlBackUpModal: EventEmitter<string>;\n @Event() nlCloseModal: EventEmitter;\n\n handleLogout() {\n this.nlLogoutBanner.emit(METHOD_MODULE.LOGOUT);\n this.nlCloseModal.emit();\n }\n\n handleCancel() {\n this.nlCloseModal.emit();\n }\n\n handleBackUp() {\n state.path = [CURRENT_MODULE.IMPORT_FLOW];\n }\n\n render() {\n return (\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-4xl\">{this.titleModal}</h1>\n <p class=\"nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto\">{this.description}</p>\n\n <div class=\"mt-3 ml-auto mr-auto w-60 flex flex-col gap-2\">\n {/* <button-base onClick={() => this.handleCancel()} titleBtn=\"Cancel\" /> */}\n <button-base onClick={() => this.handleBackUp()} titleBtn=\"Backup keys\" theme=\"lemonade\" />\n <button-base onClick={() => this.handleLogout()} theme=\"crab\" titleBtn=\"Logout and delete keys\" />\n </div>\n </div>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"nl-connect2.js","mappings":";;;;;;AAAA,MAAM,YAAY,GAAG,gq3CAAgq3C,CAAC;AACtr3C,wBAAe,YAAY;;MCQd,SAAS;;;;;4BACG,sBAAsB;2BACT,EAAE;sBACZ,KAAK;wCACwB,EAAE;mCAEjB,KAAK;;IAG7C,kBAAkB,CAAC,MAAM;QACvB,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;KACtC;IAED,kBAAkB;QAChB,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC;KACtD;IAED,eAAe,CAAC,CAAa;QAC3B,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;KACjE;IAED,iBAAiB,MAAK;IAEtB,cAAc,CAAC,CAAQ,EAAE,EAAoB;QAC3C,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC9B;IAED,sBAAsB;QACpB,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;KAC3D;IAED,MAAM;QACJ,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,mBAAmB,GAAG,YAAY,GAAG,UAAU,mDAAmD,CAAC;QAE9H,QACE,EAAC,QAAQ,uDACP,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,2DAAI,KAAK,EAAC,yCAAyC,IAAE,IAAI,CAAC,YAAY,CAAM,CACxE,EAEN,4DAAK,KAAK,EAAC,KAAK,IACb,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,KAC5C,4DAAK,KAAK,EAAC,uBAAuB,IAChC,0DAAG,KAAK,EAAC,2CAA2C,wBAAsB,EAC1E,2DAAI,KAAK,EAAC,oEAAoE,IAC3E,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,EAAE;YACnC,MAAM,SAAS,GAAG,EAAE,CAAC,SAAS,KAAK,SAAS,CAAC;YAC7C,MAAM,aAAa,GAAG,EAAE,CAAC,SAAS,KAAK,KAAK,CAAC;YAC7C,MAAM,UAAU,GAAG,SAAS,IAAI,aAAa,CAAC;YAE9C,QACE,UAAI,KAAK,EAAE,UAAU,GAAG,gCAAgC,GAAG,EAAE,IAC3D,SACE,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,EAAE,CAAC,IAAI,EACtC,MAAM,EAAC,QAAQ,EACf,OAAO,EAAE,CAAC;oBACR,IAAI,UAAU,EAAE;wBACd,CAAC,CAAC,cAAc,EAAE,CAAC;wBACnB,OAAO;qBACR;oBACD,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;iBAC5B,EACD,KAAK,EAAE,mFAAmF,UAAU,GAAG,gBAAgB,GAAG,kCAAkC,EAAE,IAE9J,WAAK,KAAK,EAAC,kCAAkC,IAC3C,WAAK,KAAK,EAAC,wGAAwG,IAChH,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,IACd,WAAK,KAAK,EAAE,uBAAuB,aAAa,GAAG,WAAW,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,GAAI,KAEpG,WAAK,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,kBAAc,KAAK,EAAC,MAAM,EAAC,SAAS,EAAC,KAAK,EAAC,eAAe,IAC/H,8BACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,iNAAiN,GACnN,CACE,CACP,CACG,CACF,EACN,WAAK,KAAK,EAAC,sCAAsC,IAC/C,WAAK,KAAK,EAAC,mCAAmC,IAC3C,EAAE,CAAC,IAAI,EACP,SAAS,IAAI,YAAM,KAAK,EAAC,6BAA6B,kBAAmB,EACzE,aAAa,IAAI,YAAM,KAAK,EAAC,6BAA6B,cAAe,CACtE,CACF,CACJ,CACD,EACL;SACH,CAAC,CACC,CACD,CACP,CACG,EACN,4DAAK,KAAK,EAAC,2BAA2B,IACpC,0DAAG,KAAK,EAAC,0DAA0D,IAAE,KAAK,CAAC,KAAK,CAAK,CACjF,EAEN,4DAAK,KAAK,EAAC,kBAAkB,IAC3B,gFACE,aAAa,EAAE,KAAK,CAAC,iBAAiB,EACtC,iBAAiB,EAAE,CAAC;gBAClB,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;aACpC,GACD,CACE,EAEN,4DAAK,KAAK,EAAC,uBAAuB,IAC/B,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,MACnE,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,4DACE,OAAO,EAAE,MAAM,IAAI,CAAC,kBAAkB,EAAE,EACxC,KAAK,EAAC,yJAAyJ,gBAG/J,4DACE,KAAK,EAAE,UAAU,EACjB,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,kBACR,GAAG,oBACD,OAAO,qBACN,OAAO,IAEvB,6DAAM,CAAC,EAAC,cAAc,GAAG,CACrB,CACF,CACF,CACP,EAED,4DACE,KAAK,EAAE,GAAG,IAAI,CAAC,mBAAmB,GAAG,iCAAiC,GAAG,+BAA+B,oEAAoE,IAG3K,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAC9B,oEAAa,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,KAAK,CAAC,IAC5F,4DACE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAC1B,IAAI,EAAC,YAAY,EACjB,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,WAAW,kBACN,GAAG,EAChB,MAAM,EAAC,cAAc,IAGrB,+EACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,yJAAyJ,GAC3J,CACE,CACM,CACf,EAEA,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAC9B,oEAAa,QAAQ,EAAC,mBAAmB,EAAC,OAAO,EAAE,MAAM,IAAI,CAAC,sBAAsB,EAAE,IACpF,4DAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAC,YAAY,EAAC,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,kBAAc,KAAK,EAAC,MAAM,EAAC,cAAc,IAC5J,+EACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,6bAA6b,GAC/b,EACF,+EACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,0OAA0O,GAC5O,CACE,CACM,CACf,EAEA,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAC9B,oEAAa,OAAO,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,QAAQ,EAAC,YAAY,IACzG,4DAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAC,YAAY,EAAC,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,kBAAc,KAAK,EAAC,MAAM,EAAC,cAAc,IAC5J,+EACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,2KAA2K,GAC7K,CACE,CACM,CACf,CACG,CACF,CACG,EACX;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-connect/nl-connect.css?tag=nl-connect","src/components/nl-connect/nl-connect.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, Fragment, h, Prop, State } from '@stencil/core';\nimport { AuthMethod, ConnectionString, CURRENT_MODULE } from '@/types';\nimport { state } from '@/store';\n\n@Component({\n tag: 'nl-connect',\n styleUrl: 'nl-connect.css',\n shadow: false,\n})\nexport class NlConnect {\n @Prop() titleWelcome = 'Connect to key store';\n @Prop() authMethods: AuthMethod[] = [];\n @Prop() hasOTP: boolean = false;\n @Prop() connectionStringServices: ConnectionString[] = [];\n\n @State() isOpenAdvancedLogin: boolean = false;\n @Event() nlNostrConnect: EventEmitter<ConnectionString>;\n\n handleChangeScreen(screen) {\n state.path = [...state.path, screen];\n }\n\n handleOpenAdvanced() {\n this.isOpenAdvancedLogin = !this.isOpenAdvancedLogin;\n }\n\n allowAuthMethod(m: AuthMethod) {\n return !this.authMethods.length || this.authMethods.includes(m);\n }\n\n componentWillLoad() {}\n\n handleOpenLink(e: Event, cs: ConnectionString) {\n e.preventDefault();\n this.nlNostrConnect.emit(cs);\n }\n\n handleConnectionString() {\n this.handleChangeScreen(CURRENT_MODULE.CONNECTION_STRING);\n }\n\n render() {\n const arrowClass = `${this.isOpenAdvancedLogin ? 'rotate-180' : 'rotate-0'} duration-300 flex-shrink-0 w-4 h-4 text-blue-500`;\n\n return (\n <Fragment>\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-3xl\">{this.titleWelcome}</h1>\n </div>\n\n <div class=\"p-4\">\n {Boolean(this.connectionStringServices.length) && (\n <div class=\"max-w-96 mx-auto pt-5\">\n <p class=\"nl-description font-medium text-sm pb-1.5\">Select key store:</p>\n <ul class=\"p-2 rounded-lg border border-gray-200 flex flex-col w-full gap-0.5\">\n {this.connectionStringServices.map(el => {\n const isLoading = el.available === 'loading';\n const isUnavailable = el.available === false;\n const isDisabled = isLoading || isUnavailable;\n\n return (\n <li class={isDisabled ? 'opacity-50 pointer-events-none' : ''}>\n <a\n href={isDisabled ? undefined : el.link}\n target=\"_blank\"\n onClick={e => {\n if (isDisabled) {\n e.preventDefault();\n return;\n }\n this.handleOpenLink(e, el);\n }}\n class={`flex items-center gap-x-3.5 w-full py-2 px-3 rounded-lg text-sm justify-between ${isDisabled ? 'cursor-default' : 'hover:bg-gray-300 cursor-pointer'}`}\n >\n <div class=\"w-full max-w-7 h-7 flex relative\">\n <div class=\"uppercase font-bold w-full h-full rounded-full border border-gray-400 flex justify-center items-center\">\n {Boolean(el.img) ? (\n <img class={`w-full rounded-full ${isUnavailable ? 'grayscale' : ''}`} src={el.img} alt={el.name} />\n ) : (\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"#9ca3af\" class=\"w-4 h-4 block\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M15.75 5.25a3 3 0 0 1 3 3m3 0a6 6 0 0 1-7.029 5.912c-.563-.097-1.159.026-1.563.43L10.5 17.25H8.25v2.25H6v2.25H2.25v-2.818c0-.597.237-1.17.659-1.591l6.499-6.499c.404-.404.527-1 .43-1.563A6 6 0 1 1 21.75 8.25Z\"\n />\n </svg>\n )}\n </div>\n </div>\n <div class=\"overflow-hidden flex flex-col w-full\">\n <div class=\"nl-title truncate overflow-hidden\">\n {el.name}\n {isLoading && <span class=\"nl-description text-xs ml-2\">checking...</span>}\n {isUnavailable && <span class=\"nl-description text-xs ml-2\">offline</span>}\n </div>\n </div>\n </a>\n </li>\n );\n })}\n </ul>\n </div>\n )}\n </div>\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n\n <div class=\"max-w-72 mx-auto\">\n <nl-nip46-relay-settings\n defaultRelays={state.customNip46Relays}\n onNlRelaysChanged={e => {\n state.customNip46Relays = e.detail;\n }}\n />\n </div>\n\n <div class=\"max-w-52 mx-auto pb-5\">\n {(this.allowAuthMethod('connect') || this.allowAuthMethod('readOnly')) && (\n <div class=\"flex justify-center\">\n <div\n onClick={() => this.handleOpenAdvanced()}\n class=\"text-blue-500 mt-3 decoration-dashed cursor-pointer inline-flex gap-2 items-center pb-1 border-dashed border-b-[1px] border-blue-500 text-sm font-light\"\n >\n Advanced\n <svg\n class={arrowClass}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n </div>\n </div>\n )}\n\n <div\n class={`${this.isOpenAdvancedLogin ? 'max-h-[500px] mt-3 duration-300' : 'max-h-0 mt-0 duration-[0.25s]'} transition-max-height ease-in flex gap-3 flex-col overflow-hidden`}\n >\n {/* {this.hasExtension && !this.allowAuthMethod('extension') && this.renderSignInWithExtension()} */}\n {this.allowAuthMethod('connect') && (\n <button-base titleBtn=\"User name\" onClick={() => this.handleChangeScreen(CURRENT_MODULE.LOGIN)}>\n <svg\n style={{ display: 'none' }}\n slot=\"icon-start\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke-width=\"2\"\n stroke=\"currentColor\"\n // class=\"flex-shrink-0 w-4 h-4 text-gray-500\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.501 20.118a7.5 7.5 0 0 1 14.998 0A17.933 17.933 0 0 1 12 21.75c-2.676 0-5.216-.584-7.499-1.632Z\"\n />\n </svg>\n </button-base>\n )}\n\n {this.allowAuthMethod('connect') && (\n <button-base titleBtn=\"Connection string\" onClick={() => this.handleConnectionString()}>\n <svg style={{ display: 'none' }} slot=\"icon-start\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M3.75 4.875c0-.621.504-1.125 1.125-1.125h4.5c.621 0 1.125.504 1.125 1.125v4.5c0 .621-.504 1.125-1.125 1.125h-4.5A1.125 1.125 0 0 1 3.75 9.375v-4.5ZM3.75 14.625c0-.621.504-1.125 1.125-1.125h4.5c.621 0 1.125.504 1.125 1.125v4.5c0 .621-.504 1.125-1.125 1.125h-4.5a1.125 1.125 0 0 1-1.125-1.125v-4.5ZM13.5 4.875c0-.621.504-1.125 1.125-1.125h4.5c.621 0 1.125.504 1.125 1.125v4.5c0 .621-.504 1.125-1.125 1.125h-4.5A1.125 1.125 0 0 1 13.5 9.375v-4.5Z\"\n />\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M6.75 6.75h.75v.75h-.75v-.75ZM6.75 16.5h.75v.75h-.75v-.75ZM16.5 6.75h.75v.75h-.75v-.75ZM13.5 13.5h.75v.75h-.75v-.75ZM13.5 19.5h.75v.75h-.75v-.75ZM19.5 13.5h.75v.75h-.75v-.75ZM19.5 19.5h.75v.75h-.75v-.75ZM16.5 16.5h.75v.75h-.75v-.75Z\"\n />\n </svg>\n </button-base>\n )}\n\n {this.allowAuthMethod('connect') && (\n <button-base onClick={() => this.handleChangeScreen(CURRENT_MODULE.LOGIN_BUNKER_URL)} titleBtn=\"Bunker URL\">\n <svg style={{ display: 'none' }} slot=\"icon-start\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622 1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244\"\n />\n </svg>\n </button-base>\n )}\n </div>\n </div>\n </Fragment>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-connect2.js","mappings":"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","names":[],"sources":["src/components/nl-connect/nl-connect.css?tag=nl-connect","src/components/nl-connect/nl-connect.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, Fragment, h, Prop, State } from '@stencil/core';\nimport { AuthMethod, ConnectionString, CURRENT_MODULE } from '@/types';\nimport { state } from '@/store';\n\n@Component({\n tag: 'nl-connect',\n styleUrl: 'nl-connect.css',\n shadow: false,\n})\nexport class NlConnect {\n @Prop() titleWelcome = 'Connect to key store';\n @Prop() authMethods: AuthMethod[] = [];\n @Prop() hasOTP: boolean = false;\n @Prop() connectionStringServices: ConnectionString[] = [];\n\n @State() isOpenAdvancedLogin: boolean = false;\n @Event() nlNostrConnect: EventEmitter<ConnectionString>;\n\n handleChangeScreen(screen) {\n state.path = [...state.path, screen];\n }\n\n handleOpenAdvanced() {\n this.isOpenAdvancedLogin = !this.isOpenAdvancedLogin;\n }\n\n allowAuthMethod(m: AuthMethod) {\n return !this.authMethods.length || this.authMethods.includes(m);\n }\n\n componentWillLoad() {}\n\n handleOpenLink(e: Event, cs: ConnectionString) {\n e.preventDefault();\n this.nlNostrConnect.emit(cs);\n }\n\n handleConnectionString() {\n this.handleChangeScreen(CURRENT_MODULE.CONNECTION_STRING);\n }\n\n render() {\n const arrowClass = `${this.isOpenAdvancedLogin ? 'rotate-180' : 'rotate-0'} duration-300 flex-shrink-0 w-4 h-4 text-blue-500`;\n\n return (\n <Fragment>\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-3xl\">{this.titleWelcome}</h1>\n </div>\n\n <div class=\"p-4\">\n {Boolean(this.connectionStringServices.length) && (\n <div class=\"max-w-96 mx-auto pt-5\">\n <p class=\"nl-description font-medium text-sm pb-1.5\">Select key store:</p>\n <ul class=\"p-2 rounded-lg border border-gray-200 flex flex-col w-full gap-0.5\">\n {this.connectionStringServices.map(el => {\n const isLoading = el.available === 'loading';\n const isUnavailable = el.available === false;\n const isDisabled = isLoading || isUnavailable;\n\n return (\n <li class={isDisabled ? 'opacity-50 pointer-events-none' : ''}>\n <a\n href={isDisabled ? undefined : el.link}\n target=\"_blank\"\n onClick={e => {\n if (isDisabled) {\n e.preventDefault();\n return;\n }\n this.handleOpenLink(e, el);\n }}\n class={`flex items-center gap-x-3.5 w-full py-2 px-3 rounded-lg text-sm justify-between ${isDisabled ? 'cursor-default' : 'hover:bg-gray-300 cursor-pointer'}`}\n >\n <div class=\"w-full max-w-7 h-7 flex relative\">\n <div class=\"uppercase font-bold w-full h-full rounded-full border border-gray-400 flex justify-center items-center\">\n {Boolean(el.img) ? (\n <img class={`w-full rounded-full ${isUnavailable ? 'grayscale' : ''}`} src={el.img} alt={el.name} />\n ) : (\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"#9ca3af\" class=\"w-4 h-4 block\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M15.75 5.25a3 3 0 0 1 3 3m3 0a6 6 0 0 1-7.029 5.912c-.563-.097-1.159.026-1.563.43L10.5 17.25H8.25v2.25H6v2.25H2.25v-2.818c0-.597.237-1.17.659-1.591l6.499-6.499c.404-.404.527-1 .43-1.563A6 6 0 1 1 21.75 8.25Z\"\n />\n </svg>\n )}\n </div>\n </div>\n <div class=\"overflow-hidden flex flex-col w-full\">\n <div class=\"nl-title truncate overflow-hidden\">\n {el.name}\n {isLoading && <span class=\"nl-description text-xs ml-2\">checking...</span>}\n {isUnavailable && <span class=\"nl-description text-xs ml-2\">offline</span>}\n </div>\n </div>\n </a>\n </li>\n );\n })}\n </ul>\n </div>\n )}\n </div>\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n\n <div class=\"max-w-72 mx-auto\">\n <nl-nip46-relay-settings\n defaultRelays={state.customNip46Relays}\n onNlRelaysChanged={e => {\n state.customNip46Relays = e.detail;\n }}\n />\n </div>\n\n <div class=\"max-w-52 mx-auto pb-5\">\n {(this.allowAuthMethod('connect') || this.allowAuthMethod('readOnly')) && (\n <div class=\"flex justify-center\">\n <div\n onClick={() => this.handleOpenAdvanced()}\n class=\"text-blue-500 mt-3 decoration-dashed cursor-pointer inline-flex gap-2 items-center pb-1 border-dashed border-b-[1px] border-blue-500 text-sm font-light\"\n >\n Advanced\n <svg\n class={arrowClass}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n </div>\n </div>\n )}\n\n <div\n class={`${this.isOpenAdvancedLogin ? 'max-h-[500px] mt-3 duration-300' : 'max-h-0 mt-0 duration-[0.25s]'} transition-max-height ease-in flex gap-3 flex-col overflow-hidden`}\n >\n {/* {this.hasExtension && !this.allowAuthMethod('extension') && this.renderSignInWithExtension()} */}\n {this.allowAuthMethod('connect') && (\n <button-base titleBtn=\"User name\" onClick={() => this.handleChangeScreen(CURRENT_MODULE.LOGIN)}>\n <svg\n style={{ display: 'none' }}\n slot=\"icon-start\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke-width=\"2\"\n stroke=\"currentColor\"\n // class=\"flex-shrink-0 w-4 h-4 text-gray-500\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.501 20.118a7.5 7.5 0 0 1 14.998 0A17.933 17.933 0 0 1 12 21.75c-2.676 0-5.216-.584-7.499-1.632Z\"\n />\n </svg>\n </button-base>\n )}\n\n {this.allowAuthMethod('connect') && (\n <button-base titleBtn=\"Connection string\" onClick={() => this.handleConnectionString()}>\n <svg style={{ display: 'none' }} slot=\"icon-start\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M3.75 4.875c0-.621.504-1.125 1.125-1.125h4.5c.621 0 1.125.504 1.125 1.125v4.5c0 .621-.504 1.125-1.125 1.125h-4.5A1.125 1.125 0 0 1 3.75 9.375v-4.5ZM3.75 14.625c0-.621.504-1.125 1.125-1.125h4.5c.621 0 1.125.504 1.125 1.125v4.5c0 .621-.504 1.125-1.125 1.125h-4.5a1.125 1.125 0 0 1-1.125-1.125v-4.5ZM13.5 4.875c0-.621.504-1.125 1.125-1.125h4.5c.621 0 1.125.504 1.125 1.125v4.5c0 .621-.504 1.125-1.125 1.125h-4.5A1.125 1.125 0 0 1 13.5 9.375v-4.5Z\"\n />\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M6.75 6.75h.75v.75h-.75v-.75ZM6.75 16.5h.75v.75h-.75v-.75ZM16.5 6.75h.75v.75h-.75v-.75ZM13.5 13.5h.75v.75h-.75v-.75ZM13.5 19.5h.75v.75h-.75v-.75ZM19.5 13.5h.75v.75h-.75v-.75ZM19.5 19.5h.75v.75h-.75v-.75ZM16.5 16.5h.75v.75h-.75v-.75Z\"\n />\n </svg>\n </button-base>\n )}\n\n {this.allowAuthMethod('connect') && (\n <button-base onClick={() => this.handleChangeScreen(CURRENT_MODULE.LOGIN_BUNKER_URL)} titleBtn=\"Bunker URL\">\n <svg style={{ display: 'none' }} slot=\"icon-start\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622 1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244\"\n />\n </svg>\n </button-base>\n )}\n </div>\n </div>\n </Fragment>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"nl-dialog2.js","mappings":";;AAAA,MAAM,WAAW,GAAG,8toCAA8toC,CAAC;AACnvoC,uBAAe,WAAW;;MCMb,QAAQ;;;;;;IAGnB,gBAAgB;;QACd,MAAA,IAAI,CAAC,aAAa,0CAAE,SAAS,EAAE,CAAC;KACjC;IAED,oBAAoB;;QAClB,MAAA,IAAI,CAAC,aAAa,0CAAE,KAAK,EAAE,CAAC;KAC7B;IAED,MAAM;QACJ,QACE,+DAAQ,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,aAAa,GAAG,EAAuB,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,EAAE,aAAa,EAAE,IACzJ,8DAAa,CACN,EACT;KACH;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-dialog/nl-dialog.css?tag=nl-dialog&encapsulation=shadow","src/components/nl-dialog/nl-dialog.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h } from '@stencil/core';\n\n@Component({\n tag: 'nl-dialog',\n styleUrl: 'nl-dialog.css',\n shadow: true,\n})\nexport class NlDialog {\n private dialogElement?: HTMLDialogElement;\n\n componentDidLoad() {\n this.dialogElement?.showModal();\n }\n\n disconnectedCallback() {\n this.dialogElement?.close();\n }\n\n render() {\n return (\n <dialog ref={el => (this.dialogElement = el as HTMLDialogElement)} class={'m-auto nl-banner-dialog'} style={{ border: '0', backgroundColor: 'transparent' }}>\n <slot></slot>\n </dialog>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-dialog2.js","mappings":";;AAAA,MAAM,WAAW,GAAG,owoCAAowoC,CAAC;AACzxoC,uBAAe,WAAW;;MCMb,QAAQ;;;;;;IAGnB,gBAAgB;;QACd,MAAA,IAAI,CAAC,aAAa,0CAAE,SAAS,EAAE,CAAC;KACjC;IAED,oBAAoB;;QAClB,MAAA,IAAI,CAAC,aAAa,0CAAE,KAAK,EAAE,CAAC;KAC7B;IAED,MAAM;QACJ,QACE,+DAAQ,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,aAAa,GAAG,EAAuB,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,EAAE,aAAa,EAAE,IACzJ,8DAAa,CACN,EACT;KACH;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-dialog/nl-dialog.css?tag=nl-dialog&encapsulation=shadow","src/components/nl-dialog/nl-dialog.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h } from '@stencil/core';\n\n@Component({\n tag: 'nl-dialog',\n styleUrl: 'nl-dialog.css',\n shadow: true,\n})\nexport class NlDialog {\n private dialogElement?: HTMLDialogElement;\n\n componentDidLoad() {\n this.dialogElement?.showModal();\n }\n\n disconnectedCallback() {\n this.dialogElement?.close();\n }\n\n render() {\n return (\n <dialog ref={el => (this.dialogElement = el as HTMLDialogElement)} class={'m-auto nl-banner-dialog'} style={{ border: '0', backgroundColor: 'transparent' }}>\n <slot></slot>\n </dialog>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"nl-iframe2.js","mappings":";;AAAA,MAAM,WAAW,GAAG,gq3CAAgq3C,CAAC;AACrr3C,uBAAe,WAAW;;MCMb,eAAe;;;;;0BACL,SAAS;2BACR,6HAA6H;yBAC/H,EAAE;;IAGtB,YAAY;QACV,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;IAED,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,qBAAqB,IAI9B,4DAAK,KAAK,EAAC,0BAA0B,IAClC,IAAI,CAAC,SAAS,KACb,+DACE,GAAG,EAAE,IAAI,CAAC,SAAS,EACnB,KAAK,EAAE;gBACL,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,gBAAgB;gBACxB,YAAY,EAAE,KAAK;aACpB,GACO,CACX,CACG,CACF,EACN;KACH;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-iframe/nl-iframe.css?tag=nl-iframe","src/components/nl-iframe/nl-iframe.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'nl-iframe',\n styleUrl: 'nl-iframe.css',\n shadow: false,\n})\nexport class NlConfirmLogout {\n @Prop() titleModal = 'Confirm';\n @Prop() description = 'Your profile keys are stored in this browser tab and will be deleted if you log out, and your profile will be inaccessible.';\n @Prop() iframeUrl = '';\n @Event() nlCloseModal: EventEmitter;\n\n handleCancel() {\n this.nlCloseModal.emit();\n }\n\n render() {\n return (\n <div class=\"p-4 overflow-y-auto\">\n {/* <h1 class=\"nl-title font-bold text-center text-4xl\">{this.titleModal}</h1>\n <p class=\"nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto\">{this.description}</p> */}\n\n <div class=\"mt-3 flex flex-col gap-2\">\n {this.iframeUrl && (\n <iframe\n src={this.iframeUrl}\n style={{\n width: '100%',\n height: '600px',\n border: '1px solid #ccc',\n borderRadius: '8px',\n }}\n ></iframe>\n )}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-iframe2.js","mappings":";;AAAA,MAAM,WAAW,GAAG,mt3CAAmt3C,CAAC;AACxu3C,uBAAe,WAAW;;MCMb,eAAe;;;;;0BACL,SAAS;2BACR,6HAA6H;yBAC/H,EAAE;;IAGtB,YAAY;QACV,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;IAED,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,qBAAqB,IAI9B,4DAAK,KAAK,EAAC,0BAA0B,IAClC,IAAI,CAAC,SAAS,KACb,+DACE,GAAG,EAAE,IAAI,CAAC,SAAS,EACnB,KAAK,EAAE;gBACL,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,gBAAgB;gBACxB,YAAY,EAAE,KAAK;aACpB,GACO,CACX,CACG,CACF,EACN;KACH;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-iframe/nl-iframe.css?tag=nl-iframe","src/components/nl-iframe/nl-iframe.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'nl-iframe',\n styleUrl: 'nl-iframe.css',\n shadow: false,\n})\nexport class NlConfirmLogout {\n @Prop() titleModal = 'Confirm';\n @Prop() description = 'Your profile keys are stored in this browser tab and will be deleted if you log out, and your profile will be inaccessible.';\n @Prop() iframeUrl = '';\n @Event() nlCloseModal: EventEmitter;\n\n handleCancel() {\n this.nlCloseModal.emit();\n }\n\n render() {\n return (\n <div class=\"p-4 overflow-y-auto\">\n {/* <h1 class=\"nl-title font-bold text-center text-4xl\">{this.titleModal}</h1>\n <p class=\"nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto\">{this.description}</p> */}\n\n <div class=\"mt-3 flex flex-col gap-2\">\n {this.iframeUrl && (\n <iframe\n src={this.iframeUrl}\n style={{\n width: '100%',\n height: '600px',\n border: '1px solid #ccc',\n borderRadius: '8px',\n }}\n ></iframe>\n )}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"nl-import-flow2.js","mappings":"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","names":[],"sources":["src/components/nl-import-flow/nl-import-flow.css?tag=nl-import-flow","src/components/nl-import-flow/nl-import-flow.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h, Fragment, State, Prop, Event, EventEmitter } from '@stencil/core';\nimport { state } from '@/store';\nimport { ConnectionString } from '@/types';\n\n@Component({\n tag: 'nl-import-flow',\n styleUrl: 'nl-import-flow.css',\n shadow: false,\n})\nexport class NlImportFlow {\n @Prop({ mutable: true }) titleInfo = 'Back up your keys';\n @Prop() titleImport = 'Choose a service';\n @Prop() services: ConnectionString[] = [];\n\n @State() isContinued = false;\n @State() isKeyBackup = false;\n\n @State() isCopy = false;\n\n @Event() nlImportAccount: EventEmitter<ConnectionString>;\n @Event() nlExportKeys: EventEmitter<void>;\n\n handleDomainSelect(event: CustomEvent<string>) {\n const s = this.services.find(s => s.domain === event.detail);\n state.nlImport = s;\n }\n\n handleCreateAccount(e: MouseEvent) {\n e.preventDefault();\n this.nlImportAccount.emit(state.nlImport);\n }\n\n handleContinue() {\n this.isContinued = true;\n }\n\n handleContinueKeyBackup() {\n this.isKeyBackup = true;\n }\n\n async copyToClipboard() {\n this.nlExportKeys.emit();\n this.isCopy = true;\n\n setTimeout(() => {\n this.isCopy = false;\n }, 1500);\n }\n\n render() {\n if (!this.isContinued && !this.isKeyBackup) {\n return (\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-2xl\">{this.titleInfo}</h1>\n <p class=\"nl-description font-light text-sm pt-2 pb-2 max-w-96 mx-auto\">\n Nostr profiles are controlled by cryptographic keys.\n <br />\n <br />\n Your keys are currently only stored in this browser tab, and may be lost if you close it.\n <br />\n <br />\n You should backup your keys.\n <br />\n <br />\n We recommend to import your keys into a key store service, to protect them and to use with other apps.\n {/* <br />\n <br />\n You can also export your keys and save them in your password manager. */}\n </p>\n <div class=\"ml-auto mr-auto mb-2 w-72\">\n <button-base onClick={() => this.handleContinue()} titleBtn=\"Import to key store\" />\n </div>\n <div class=\"ml-auto mr-auto w-72\">\n <button-base onClick={() => this.handleContinueKeyBackup()} titleBtn=\"Export keys\" />\n </div>\n </div>\n );\n }\n\n if (this.isKeyBackup) {\n return (\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-2xl\">Key export</h1>\n <p class=\"nl-description font-light text-sm pt-2 pb-2 max-w-96 mx-auto\">\n Copy your keys and store them in a safe place, like a password manager.\n <br />\n <br />\n You can sign into other Nostr apps by pasting your keys into them.\n <br />\n <br />\n Your keys must be kept secret, never share them with anyone.\n </p>\n <div class=\"max-w-72 mx-auto\">\n <div class=\"ml-auto mr-auto mb-2 w-72\">\n <button-base onClick={() => this.copyToClipboard()} titleBtn={this.isCopy ? 'Copied!' : 'Copy to clipboard'} />\n </div>\n </div>\n </div>\n );\n }\n\n const options = this.services.filter(s => s.canImport).map(s => ({ name: s.domain!, value: s.domain! }));\n\n return (\n <Fragment>\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-2xl\">{this.titleImport}</h1>\n <p class=\"nl-description font-light text-center text-sm pt-2 max-w-96 mx-auto\">\n Your Nostr keys will be imported into the service you choose. You will manage your keys on their website.\n </p>\n </div>\n\n <div class=\"max-w-72 mx-auto mb-5\">\n <div class=\"mb-0.5\">\n <nl-select onSelectDomain={e => this.handleDomainSelect(e)} selected={0} options={options}></nl-select>\n </div>\n <p class=\"nl-title font-light text-sm mb-2\">Default provider is a fine choice to start with.</p>\n\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n\n <button-base disabled={state.isLoading} onClick={e => this.handleCreateAccount(e)} titleBtn=\"Start importing\">\n {state.isLoading ? (\n <span\n slot=\"icon-start\"\n class=\"animate-spin-loading inline-block w-4 h-4 border-[3px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full\"\n role=\"status\"\n aria-label=\"loading\"\n ></span>\n ) : (\n <svg slot=\"icon-start\" style={{ display: 'none' }} xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0 3.375 3.375 0 0 1 6.75 0ZM3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.318 12.318 0 0 1 9.374 21c-2.331 0-4.512-.645-6.374-1.766Z\"\n />\n </svg>\n )}\n </button-base>\n </div>\n </Fragment>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-import-flow2.js","mappings":"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","names":[],"sources":["src/components/nl-import-flow/nl-import-flow.css?tag=nl-import-flow","src/components/nl-import-flow/nl-import-flow.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h, Fragment, State, Prop, Event, EventEmitter } from '@stencil/core';\nimport { state } from '@/store';\nimport { ConnectionString } from '@/types';\n\n@Component({\n tag: 'nl-import-flow',\n styleUrl: 'nl-import-flow.css',\n shadow: false,\n})\nexport class NlImportFlow {\n @Prop({ mutable: true }) titleInfo = 'Back up your keys';\n @Prop() titleImport = 'Choose a service';\n @Prop() services: ConnectionString[] = [];\n\n @State() isContinued = false;\n @State() isKeyBackup = false;\n\n @State() isCopy = false;\n\n @Event() nlImportAccount: EventEmitter<ConnectionString>;\n @Event() nlExportKeys: EventEmitter<void>;\n\n handleDomainSelect(event: CustomEvent<string>) {\n const s = this.services.find(s => s.domain === event.detail);\n state.nlImport = s;\n }\n\n handleCreateAccount(e: MouseEvent) {\n e.preventDefault();\n this.nlImportAccount.emit(state.nlImport);\n }\n\n handleContinue() {\n this.isContinued = true;\n }\n\n handleContinueKeyBackup() {\n this.isKeyBackup = true;\n }\n\n async copyToClipboard() {\n this.nlExportKeys.emit();\n this.isCopy = true;\n\n setTimeout(() => {\n this.isCopy = false;\n }, 1500);\n }\n\n render() {\n if (!this.isContinued && !this.isKeyBackup) {\n return (\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-2xl\">{this.titleInfo}</h1>\n <p class=\"nl-description font-light text-sm pt-2 pb-2 max-w-96 mx-auto\">\n Nostr profiles are controlled by cryptographic keys.\n <br />\n <br />\n Your keys are currently only stored in this browser tab, and may be lost if you close it.\n <br />\n <br />\n You should backup your keys.\n <br />\n <br />\n We recommend to import your keys into a key store service, to protect them and to use with other apps.\n {/* <br />\n <br />\n You can also export your keys and save them in your password manager. */}\n </p>\n <div class=\"ml-auto mr-auto mb-2 w-72\">\n <button-base onClick={() => this.handleContinue()} titleBtn=\"Import to key store\" />\n </div>\n <div class=\"ml-auto mr-auto w-72\">\n <button-base onClick={() => this.handleContinueKeyBackup()} titleBtn=\"Export keys\" />\n </div>\n </div>\n );\n }\n\n if (this.isKeyBackup) {\n return (\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-2xl\">Key export</h1>\n <p class=\"nl-description font-light text-sm pt-2 pb-2 max-w-96 mx-auto\">\n Copy your keys and store them in a safe place, like a password manager.\n <br />\n <br />\n You can sign into other Nostr apps by pasting your keys into them.\n <br />\n <br />\n Your keys must be kept secret, never share them with anyone.\n </p>\n <div class=\"max-w-72 mx-auto\">\n <div class=\"ml-auto mr-auto mb-2 w-72\">\n <button-base onClick={() => this.copyToClipboard()} titleBtn={this.isCopy ? 'Copied!' : 'Copy to clipboard'} />\n </div>\n </div>\n </div>\n );\n }\n\n const options = this.services.filter(s => s.canImport).map(s => ({ name: s.domain!, value: s.domain! }));\n\n return (\n <Fragment>\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-2xl\">{this.titleImport}</h1>\n <p class=\"nl-description font-light text-center text-sm pt-2 max-w-96 mx-auto\">\n Your Nostr keys will be imported into the service you choose. You will manage your keys on their website.\n </p>\n </div>\n\n <div class=\"max-w-72 mx-auto mb-5\">\n <div class=\"mb-0.5\">\n <nl-select onSelectDomain={e => this.handleDomainSelect(e)} selected={0} options={options}></nl-select>\n </div>\n <p class=\"nl-title font-light text-sm mb-2\">Default provider is a fine choice to start with.</p>\n\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n\n <button-base disabled={state.isLoading} onClick={e => this.handleCreateAccount(e)} titleBtn=\"Start importing\">\n {state.isLoading ? (\n <span\n slot=\"icon-start\"\n class=\"animate-spin-loading inline-block w-4 h-4 border-[3px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full\"\n role=\"status\"\n aria-label=\"loading\"\n ></span>\n ) : (\n <svg slot=\"icon-start\" style={{ display: 'none' }} xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0 3.375 3.375 0 0 1 6.75 0ZM3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.318 12.318 0 0 1 9.374 21c-2.331 0-4.512-.645-6.374-1.766Z\"\n />\n </svg>\n )}\n </button-base>\n </div>\n </Fragment>\n );\n }\n}\n"],"version":3}
@@ -12,7 +12,7 @@ const NlInfoExtension = /*@__PURE__*/ proxyCustomElement(class NlInfoExtension e
12
12
  this.__registerHost();
13
13
  }
14
14
  render() {
15
- return (h("div", { key: '1d919493f0e640d5394470dd77ad586c8ad949d4', class: "p-4 overflow-y-auto" }, state.isLoadingExtension ? (h("div", null, h("h1", { class: "nl-title font-bold text-center text-4xl" }, "Signing in..."), h("div", { class: "mt-10 mb-10 ml-auto mr-auto w-20" }, h("span", { slot: "icon-start", class: "animate-spin-loading ml-auto mr-auto inline-block w-20 h-20 border-[4px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full", role: "status", "aria-label": "loading" })), h("div", { class: "ps-4 pe-4 overflow-y-auto" }, h("p", { class: "nl-error font-light text-center text-sm max-w-96 mx-auto" }, state.error)))) : (h("div", null, h("h1", { class: "nl-title font-bold text-center text-4xl" }, "Install browser extension!"), h("p", { class: "nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto" }, "Try", ' ', h("a", { href: "https://getalby.com", target: "_blank" }, "Alby"), ",", ' ', h("a", { href: "https://chromewebstore.google.com/detail/nos2x/kpgefcfmnafjgpblomihpgmejjdanjjp", target: "_blank" }, "nos2x"), ' ', "or", ' ', h("a", { href: "https://apps.apple.com/us/app/nostore/id1666553677", target: "_blank" }, "Nostore"))))));
15
+ return (h("div", { key: '8ff0cbeebc09a8d8c67fb325e2f54cc21926c2fa', class: "p-4 overflow-y-auto" }, state.isLoadingExtension ? (h("div", null, h("h1", { class: "nl-title font-bold text-center text-4xl" }, "Signing in..."), h("div", { class: "mt-10 mb-10 ml-auto mr-auto w-20" }, h("span", { slot: "icon-start", class: "animate-spin-loading ml-auto mr-auto inline-block w-20 h-20 border-[4px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full", role: "status", "aria-label": "loading" })), h("div", { class: "ps-4 pe-4 overflow-y-auto" }, h("p", { class: "nl-error font-light text-center text-sm max-w-96 mx-auto" }, state.error)))) : (h("div", null, h("h1", { class: "nl-title font-bold text-center text-4xl" }, "Install browser extension!"), h("p", { class: "nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto" }, "Try", ' ', h("a", { href: "https://getalby.com", target: "_blank" }, "Alby"), ",", ' ', h("a", { href: "https://chromewebstore.google.com/detail/nos2x/kpgefcfmnafjgpblomihpgmejjdanjjp", target: "_blank" }, "nos2x"), ' ', "or", ' ', h("a", { href: "https://apps.apple.com/us/app/nostore/id1666553677", target: "_blank" }, "Nostore"))))));
16
16
  }
17
17
  static get style() { return NlInfoExtensionStyle0; }
18
18
  }, [0, "nl-info-extension"]);
@@ -1 +1 @@
1
- {"file":"nl-info-extension2.js","mappings":";;;AAAA,MAAM,kBAAkB,GAAG,gq3CAAgq3C,CAAC;AAC5r3C,8BAAe,kBAAkB;;MCOpB,eAAe;;;;;IAC1B,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,qBAAqB,IAC7B,KAAK,CAAC,kBAAkB,IACvB,eACE,UAAI,KAAK,EAAC,yCAAyC,oBAAmB,EACtE,WAAK,KAAK,EAAC,kCAAkC,IAC3C,YACE,IAAI,EAAC,YAAY,EACjB,KAAK,EAAC,6JAA6J,EACnK,IAAI,EAAC,QAAQ,gBACF,SAAS,GACd,CACJ,EACN,WAAK,KAAK,EAAC,2BAA2B,IACpC,SAAG,KAAK,EAAC,0DAA0D,IAAE,KAAK,CAAC,KAAK,CAAK,CACjF,CACF,KAEN,eACE,UAAI,KAAK,EAAC,yCAAyC,iCAAgC,EACnF,SAAG,KAAK,EAAC,qEAAqE,WACxE,GAAG,EACP,SAAG,IAAI,EAAC,qBAAqB,EAAC,MAAM,EAAC,QAAQ,WAEzC,OACF,GAAG,EACL,SAAG,IAAI,EAAC,iFAAiF,EAAC,MAAM,EAAC,QAAQ,YAErG,EAAC,GAAG,QACL,GAAG,EACN,SAAG,IAAI,EAAC,oDAAoD,EAAC,MAAM,EAAC,QAAQ,cAExE,CACF,CACA,CACP,CACG,EACN;KACH;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-info-extension/nl-info-extension.css?tag=nl-info-extension","src/components/nl-info-extension/nl-info-extension.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h } from '@stencil/core';\nimport { state } from '@/store';\n\n@Component({\n tag: 'nl-info-extension',\n styleUrl: 'nl-info-extension.css',\n shadow: false,\n})\nexport class NlInfoExtension {\n render() {\n return (\n <div class=\"p-4 overflow-y-auto\">\n {state.isLoadingExtension ? (\n <div>\n <h1 class=\"nl-title font-bold text-center text-4xl\">Signing in...</h1>\n <div class=\"mt-10 mb-10 ml-auto mr-auto w-20\">\n <span\n slot=\"icon-start\"\n class=\"animate-spin-loading ml-auto mr-auto inline-block w-20 h-20 border-[4px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full\"\n role=\"status\"\n aria-label=\"loading\"\n ></span>\n </div>\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n </div>\n ) : (\n <div>\n <h1 class=\"nl-title font-bold text-center text-4xl\">Install browser extension!</h1>\n <p class=\"nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto\">\n Try{' '}\n <a href=\"https://getalby.com\" target=\"_blank\">\n Alby\n </a>\n ,{' '}\n <a href=\"https://chromewebstore.google.com/detail/nos2x/kpgefcfmnafjgpblomihpgmejjdanjjp\" target=\"_blank\">\n nos2x\n </a>{' '}\n or{' '}\n <a href=\"https://apps.apple.com/us/app/nostore/id1666553677\" target=\"_blank\">\n Nostore\n </a>\n </p>\n </div>\n )}\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-info-extension2.js","mappings":";;;AAAA,MAAM,kBAAkB,GAAG,mt3CAAmt3C,CAAC;AAC/u3C,8BAAe,kBAAkB;;MCOpB,eAAe;;;;;IAC1B,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,qBAAqB,IAC7B,KAAK,CAAC,kBAAkB,IACvB,eACE,UAAI,KAAK,EAAC,yCAAyC,oBAAmB,EACtE,WAAK,KAAK,EAAC,kCAAkC,IAC3C,YACE,IAAI,EAAC,YAAY,EACjB,KAAK,EAAC,6JAA6J,EACnK,IAAI,EAAC,QAAQ,gBACF,SAAS,GACd,CACJ,EACN,WAAK,KAAK,EAAC,2BAA2B,IACpC,SAAG,KAAK,EAAC,0DAA0D,IAAE,KAAK,CAAC,KAAK,CAAK,CACjF,CACF,KAEN,eACE,UAAI,KAAK,EAAC,yCAAyC,iCAAgC,EACnF,SAAG,KAAK,EAAC,qEAAqE,WACxE,GAAG,EACP,SAAG,IAAI,EAAC,qBAAqB,EAAC,MAAM,EAAC,QAAQ,WAEzC,OACF,GAAG,EACL,SAAG,IAAI,EAAC,iFAAiF,EAAC,MAAM,EAAC,QAAQ,YAErG,EAAC,GAAG,QACL,GAAG,EACN,SAAG,IAAI,EAAC,oDAAoD,EAAC,MAAM,EAAC,QAAQ,cAExE,CACF,CACA,CACP,CACG,EACN;KACH;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-info-extension/nl-info-extension.css?tag=nl-info-extension","src/components/nl-info-extension/nl-info-extension.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h } from '@stencil/core';\nimport { state } from '@/store';\n\n@Component({\n tag: 'nl-info-extension',\n styleUrl: 'nl-info-extension.css',\n shadow: false,\n})\nexport class NlInfoExtension {\n render() {\n return (\n <div class=\"p-4 overflow-y-auto\">\n {state.isLoadingExtension ? (\n <div>\n <h1 class=\"nl-title font-bold text-center text-4xl\">Signing in...</h1>\n <div class=\"mt-10 mb-10 ml-auto mr-auto w-20\">\n <span\n slot=\"icon-start\"\n class=\"animate-spin-loading ml-auto mr-auto inline-block w-20 h-20 border-[4px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full\"\n role=\"status\"\n aria-label=\"loading\"\n ></span>\n </div>\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n </div>\n ) : (\n <div>\n <h1 class=\"nl-title font-bold text-center text-4xl\">Install browser extension!</h1>\n <p class=\"nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto\">\n Try{' '}\n <a href=\"https://getalby.com\" target=\"_blank\">\n Alby\n </a>\n ,{' '}\n <a href=\"https://chromewebstore.google.com/detail/nos2x/kpgefcfmnafjgpblomihpgmejjdanjjp\" target=\"_blank\">\n nos2x\n </a>{' '}\n or{' '}\n <a href=\"https://apps.apple.com/us/app/nostore/id1666553677\" target=\"_blank\">\n Nostore\n </a>\n </p>\n </div>\n )}\n </div>\n );\n }\n}\n"],"version":3}
@@ -11,7 +11,7 @@ const NlInfo = /*@__PURE__*/ proxyCustomElement(class NlInfo extends HTMLElement
11
11
  this.__registerHost();
12
12
  }
13
13
  render() {
14
- return (h("div", { key: 'ff51154f6dd944fd5de65bc2e8835c6b4b1cfa57', class: "p-4 overflow-y-auto" }, h("svg", { key: 'c04db0af7e108551b3b9de37dfe5c2175b6439f4', class: "w-12 h-12 mx-auto mb-2", width: "225", height: "224", viewBox: "0 0 225 224", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("rect", { key: '6a4d8f9847e857973d4e089a74fec6f8e50fc09d', width: "224.047", height: "224", rx: "64", fill: "#6951FA" }), h("path", { key: 'a5bddb82b767722286b2165bc03e6d7aec7fee98', d: "M162.441 135.941V88.0593C170.359 85.1674 176 77.5348 176 68.6696C176 57.2919 166.708 48 155.33 48C143.953 48 134.661 57.2444 134.661 68.6696C134.661 77.5822 140.302 85.1674 148.219 88.0593V135.941C147.698 136.13 147.176 136.367 146.655 136.604L87.3956 77.3452C88.6282 74.6904 89.2919 71.7511 89.2919 68.6696C89.2919 57.2444 80.0474 48 68.6696 48C57.2919 48 48 57.2444 48 68.6696C48 77.5822 53.6415 85.1674 61.5585 88.0593V135.941C53.6415 138.833 48 146.465 48 155.33C48 166.708 57.2444 176 68.6696 176C80.0948 176 89.3393 166.708 89.3393 155.33C89.3393 146.418 83.6978 138.833 75.7807 135.941V88.0593C76.3022 87.8696 76.8237 87.6326 77.3452 87.3956L136.604 146.655C135.372 149.31 134.708 152.249 134.708 155.33C134.708 166.708 143.953 176 155.378 176C166.803 176 176.047 166.708 176.047 155.33C176.047 146.418 170.406 138.833 162.489 135.941H162.441Z", fill: "white" })), h("h1", { key: 'b3264a68c05a73a83c01c2e54c7088bb234ca40d', class: "nl-title font-bold text-center text-4xl" }, "Nostr ", h("span", { key: 'ace01503f2160f1589229fbc732c7b5cf5aeedcc', class: "font-light" }, "Login")), h("p", { key: '204c3ce4a21857081eb6e65c4b4a8d5356ab2722', class: "text-green-800 dark:text-green-200 font-light text-center text-lg pt-2 max-w-96 mx-auto" }, "Version: 1.7.11"), h("p", { key: '88790a07beaad70f1d6e77ce77b30b87c7a73f3c', class: "nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto" }, "Learn more about Nostr", ' ', h("a", { key: '129c8383ab18b01fba2b13c5b805435b24056e18', target: "_blank", href: "https://nostr.how" }, "here"), ".", h("br", { key: '8c1cca37a0992068c94a22ec8dea3e859db97e4a' }), "This is an", ' ', h("a", { key: 'eb270824dba82f0a707715724b165af90f86d25b', target: "_blank", href: "https://github.com/nostrband/nostr-login" }, "open-source"), ' ', "tool by", ' ', h("a", { key: 'd64434bf56e2083bf82ad90a2daf003a3c368ddc', target: "_blank", href: "https://nostr.band" }, "Nostr.Band"), ".")));
14
+ return (h("div", { key: 'ff51154f6dd944fd5de65bc2e8835c6b4b1cfa57', class: "p-4 overflow-y-auto" }, h("svg", { key: 'c04db0af7e108551b3b9de37dfe5c2175b6439f4', class: "w-12 h-12 mx-auto mb-2", width: "225", height: "224", viewBox: "0 0 225 224", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("rect", { key: '6a4d8f9847e857973d4e089a74fec6f8e50fc09d', width: "224.047", height: "224", rx: "64", fill: "#6951FA" }), h("path", { key: 'a5bddb82b767722286b2165bc03e6d7aec7fee98', d: "M162.441 135.941V88.0593C170.359 85.1674 176 77.5348 176 68.6696C176 57.2919 166.708 48 155.33 48C143.953 48 134.661 57.2444 134.661 68.6696C134.661 77.5822 140.302 85.1674 148.219 88.0593V135.941C147.698 136.13 147.176 136.367 146.655 136.604L87.3956 77.3452C88.6282 74.6904 89.2919 71.7511 89.2919 68.6696C89.2919 57.2444 80.0474 48 68.6696 48C57.2919 48 48 57.2444 48 68.6696C48 77.5822 53.6415 85.1674 61.5585 88.0593V135.941C53.6415 138.833 48 146.465 48 155.33C48 166.708 57.2444 176 68.6696 176C80.0948 176 89.3393 166.708 89.3393 155.33C89.3393 146.418 83.6978 138.833 75.7807 135.941V88.0593C76.3022 87.8696 76.8237 87.6326 77.3452 87.3956L136.604 146.655C135.372 149.31 134.708 152.249 134.708 155.33C134.708 166.708 143.953 176 155.378 176C166.803 176 176.047 166.708 176.047 155.33C176.047 146.418 170.406 138.833 162.489 135.941H162.441Z", fill: "white" })), h("h1", { key: 'b3264a68c05a73a83c01c2e54c7088bb234ca40d', class: "nl-title font-bold text-center text-4xl" }, "Nostr ", h("span", { key: 'ace01503f2160f1589229fbc732c7b5cf5aeedcc', class: "font-light" }, "Login")), h("p", { key: '204c3ce4a21857081eb6e65c4b4a8d5356ab2722', class: "text-green-800 dark:text-green-200 font-light text-center text-lg pt-2 max-w-96 mx-auto" }, "Version: 1.15.3"), h("p", { key: '88790a07beaad70f1d6e77ce77b30b87c7a73f3c', class: "nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto" }, "Learn more about Nostr", ' ', h("a", { key: '129c8383ab18b01fba2b13c5b805435b24056e18', target: "_blank", href: "https://nostr.how" }, "here"), ".", h("br", { key: '8c1cca37a0992068c94a22ec8dea3e859db97e4a' }), "This is a", ' ', h("a", { key: '15ef3a557893b0f070b31822bbffce2d43969faa', target: "_blank", href: "https://github.com/nostrband/nostr-login" }, "fork"), ' ', "of", ' ', h("a", { key: '7f27745825055b071656c14f10e1c89e109e715b', target: "_blank", href: "https://nostr.band" }, "Nostr.Band"), "'s open-source tool.", h("br", { key: '123112a67adc5590112aa005295eed80e4e87f40' }), "Source:", ' ', h("a", { key: '13267a60fd9b7711da39831072133132ffda9b2e', target: "_blank", href: "https://github.com/nicofighter45/nostr-login" }, "nicofighter45/nostr-login"))));
15
15
  }
16
16
  static get style() { return NlInfoStyle0; }
17
17
  }, [0, "nl-info"]);
@@ -1 +1 @@
1
- {"file":"nl-info2.js","mappings":";;AAAA,MAAM,SAAS,GAAG,gq3CAAgq3C,CAAC;AACnr3C,qBAAe,SAAS;;MCMX,MAAM;;;;;IACjB,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,4DAAK,KAAK,EAAC,wBAAwB,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAC,OAAO,EAAC,aAAa,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,IAC/H,6DAAM,KAAK,EAAC,SAAS,EAAC,MAAM,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAC,SAAS,GAAG,EAC5D,6DACE,CAAC,EAAC,o1BAAo1B,EACt1B,IAAI,EAAC,OAAO,GACZ,CACE,EACN,2DAAI,KAAK,EAAC,yCAAyC,cAC3C,6DAAM,KAAK,EAAC,YAAY,YAAa,CACxC,EACL,0DAAG,KAAK,EAAC,yFAAyF,sBAAoB,EACtH,0DAAG,KAAK,EAAC,qEAAqE,8BACrD,GAAG,EAC1B,0DAAG,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,mBAAmB,WAEvC,OACH,4DAAM,gBACI,GAAG,EACd,0DAAG,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,0CAA0C,kBAE9D,EAAC,GAAG,aACA,GAAG,EACX,0DAAG,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,oBAAoB,iBAExC,MAEF,CACA,EACN;KACH;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-info/nl-info.css?tag=nl-info","src/components/nl-info/nl-info.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h } from '@stencil/core';\n\n@Component({\n tag: 'nl-info',\n styleUrl: 'nl-info.css',\n shadow: false,\n})\nexport class NlInfo {\n render() {\n return (\n <div class=\"p-4 overflow-y-auto\">\n <svg class=\"w-12 h-12 mx-auto mb-2\" width=\"225\" height=\"224\" viewBox=\"0 0 225 224\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect width=\"224.047\" height=\"224\" rx=\"64\" fill=\"#6951FA\" />\n <path\n d=\"M162.441 135.941V88.0593C170.359 85.1674 176 77.5348 176 68.6696C176 57.2919 166.708 48 155.33 48C143.953 48 134.661 57.2444 134.661 68.6696C134.661 77.5822 140.302 85.1674 148.219 88.0593V135.941C147.698 136.13 147.176 136.367 146.655 136.604L87.3956 77.3452C88.6282 74.6904 89.2919 71.7511 89.2919 68.6696C89.2919 57.2444 80.0474 48 68.6696 48C57.2919 48 48 57.2444 48 68.6696C48 77.5822 53.6415 85.1674 61.5585 88.0593V135.941C53.6415 138.833 48 146.465 48 155.33C48 166.708 57.2444 176 68.6696 176C80.0948 176 89.3393 166.708 89.3393 155.33C89.3393 146.418 83.6978 138.833 75.7807 135.941V88.0593C76.3022 87.8696 76.8237 87.6326 77.3452 87.3956L136.604 146.655C135.372 149.31 134.708 152.249 134.708 155.33C134.708 166.708 143.953 176 155.378 176C166.803 176 176.047 166.708 176.047 155.33C176.047 146.418 170.406 138.833 162.489 135.941H162.441Z\"\n fill=\"white\"\n />\n </svg>\n <h1 class=\"nl-title font-bold text-center text-4xl\">\n Nostr <span class=\"font-light\">Login</span>\n </h1>\n <p class=\"text-green-800 dark:text-green-200 font-light text-center text-lg pt-2 max-w-96 mx-auto\">Version: 1.7.11</p>\n <p class=\"nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto\">\n Learn more about Nostr{' '}\n <a target=\"_blank\" href=\"https://nostr.how\">\n here\n </a>\n .<br />\n This is an{' '}\n <a target=\"_blank\" href=\"https://github.com/nostrband/nostr-login\">\n open-source\n </a>{' '}\n tool by{' '}\n <a target=\"_blank\" href=\"https://nostr.band\">\n Nostr.Band\n </a>\n .\n </p>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-info2.js","mappings":";;AAAA,MAAM,SAAS,GAAG,mt3CAAmt3C,CAAC;AACtu3C,qBAAe,SAAS;;MCMX,MAAM;;;;;IACjB,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,4DAAK,KAAK,EAAC,wBAAwB,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAC,OAAO,EAAC,aAAa,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,IAC/H,6DAAM,KAAK,EAAC,SAAS,EAAC,MAAM,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAC,SAAS,GAAG,EAC5D,6DACE,CAAC,EAAC,o1BAAo1B,EACt1B,IAAI,EAAC,OAAO,GACZ,CACE,EACN,2DAAI,KAAK,EAAC,yCAAyC,cAC3C,6DAAM,KAAK,EAAC,YAAY,YAAa,CACxC,EACL,0DAAG,KAAK,EAAC,yFAAyF,sBAAoB,EACtH,0DAAG,KAAK,EAAC,qEAAqE,8BACrD,GAAG,EAC1B,0DAAG,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,mBAAmB,WAEvC,OACH,4DAAM,eACG,GAAG,EACb,0DAAG,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,0CAA0C,WAE9D,EAAC,GAAG,QACL,GAAG,EACN,0DAAG,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,oBAAoB,iBAExC,0BAEJ,4DAAM,aACE,GAAG,EACX,0DAAG,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,8CAA8C,gCAElE,CACF,CACA,EACN;KACH;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-info/nl-info.css?tag=nl-info","src/components/nl-info/nl-info.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h } from '@stencil/core';\n\n@Component({\n tag: 'nl-info',\n styleUrl: 'nl-info.css',\n shadow: false,\n})\nexport class NlInfo {\n render() {\n return (\n <div class=\"p-4 overflow-y-auto\">\n <svg class=\"w-12 h-12 mx-auto mb-2\" width=\"225\" height=\"224\" viewBox=\"0 0 225 224\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect width=\"224.047\" height=\"224\" rx=\"64\" fill=\"#6951FA\" />\n <path\n d=\"M162.441 135.941V88.0593C170.359 85.1674 176 77.5348 176 68.6696C176 57.2919 166.708 48 155.33 48C143.953 48 134.661 57.2444 134.661 68.6696C134.661 77.5822 140.302 85.1674 148.219 88.0593V135.941C147.698 136.13 147.176 136.367 146.655 136.604L87.3956 77.3452C88.6282 74.6904 89.2919 71.7511 89.2919 68.6696C89.2919 57.2444 80.0474 48 68.6696 48C57.2919 48 48 57.2444 48 68.6696C48 77.5822 53.6415 85.1674 61.5585 88.0593V135.941C53.6415 138.833 48 146.465 48 155.33C48 166.708 57.2444 176 68.6696 176C80.0948 176 89.3393 166.708 89.3393 155.33C89.3393 146.418 83.6978 138.833 75.7807 135.941V88.0593C76.3022 87.8696 76.8237 87.6326 77.3452 87.3956L136.604 146.655C135.372 149.31 134.708 152.249 134.708 155.33C134.708 166.708 143.953 176 155.378 176C166.803 176 176.047 166.708 176.047 155.33C176.047 146.418 170.406 138.833 162.489 135.941H162.441Z\"\n fill=\"white\"\n />\n </svg>\n <h1 class=\"nl-title font-bold text-center text-4xl\">\n Nostr <span class=\"font-light\">Login</span>\n </h1>\n <p class=\"text-green-800 dark:text-green-200 font-light text-center text-lg pt-2 max-w-96 mx-auto\">Version: 1.15.3</p>\n <p class=\"nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto\">\n Learn more about Nostr{' '}\n <a target=\"_blank\" href=\"https://nostr.how\">\n here\n </a>\n .<br />\n This is a{' '}\n <a target=\"_blank\" href=\"https://github.com/nostrband/nostr-login\">\n fork\n </a>{' '}\n of{' '}\n <a target=\"_blank\" href=\"https://nostr.band\">\n Nostr.Band\n </a>\n 's open-source tool.\n <br />\n Source:{' '}\n <a target=\"_blank\" href=\"https://github.com/nicofighter45/nostr-login\">\n nicofighter45/nostr-login\n </a>\n </p>\n </div>\n );\n }\n}\n"],"version":3}
@@ -49,7 +49,7 @@ const NlLoading = /*@__PURE__*/ proxyCustomElement(class NlLoading extends HTMLE
49
49
  const showButton = this.path !== CURRENT_MODULE.LOCAL_SIGNUP;
50
50
  const showIframe = !state.isLoading && state.iframeUrl && state.authUrl;
51
51
  const iframeUrl = state.iframeUrl ? `${state.iframeUrl}?connect=${encodeURIComponent(state.authUrl)}` : '';
52
- return (h("div", { key: '0da1c63c9d397d47d58d5093c32b532596e45e32', class: "p-4 overflow-y-auto" }, title && h("h1", { key: '802a9e76dd39059210ab8b2d4b5ac5265fc0f850', class: "nl-title font-bold text-center text-4xl" }, title), text && h("p", { key: 'c66d311cf9c5ec5ddf2fcb1033a11ac6d995df48', class: "nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto" }, text), !state.njumpIframe && !state.authUrl && state.isLoading && (h("div", { key: '49a00c120305ed0a89919b64503f31a951c16b20', class: "mt-10 mb-10 ml-auto mr-auto w-20" }, h("span", { key: '9a99b6a5c542839603494e382477a953dd54e1be', slot: "icon-start", class: "animate-spin-loading ml-auto mr-auto inline-block w-20 h-20 border-[4px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full", role: "status", "aria-label": "loading" }))), h("div", { key: '79432ff64dbadd94b83bfc66f74de30722ed10f3', class: "ps-4 pe-4 overflow-y-auto" }, h("p", { key: '7f1b04f507f9909885f3cd43fe1ae5999c0fa45f', class: "nl-error font-light text-center text-sm max-w-96 mx-auto" }, state.error)), iframeUrl && (h("div", { key: '47678e88e7526e0326201ab0169463e2c3d83530', class: "mt-3 ml-auto mr-auto w-72 flex justify-center" }, h("iframe", { key: '0656f59ee5a6578a274c136adad6a1a7b8b6624f', src: iframeUrl, width: "180px", height: "80px", style: { display: showIframe ? 'block' : 'none', border: '0' } }))), state.njumpIframe && (h("div", { key: 'a1e7f2f5eb0172b94628d0279828b669314202dd', class: "mt-3 ml-auto mr-auto flex justify-center" }, h("iframe", { key: 'e2dc852dfa21e9336c2086e575d2fea9485a895c', srcdoc: state.njumpIframe, width: "600px", style: { border: '0', height: '80vh', borderRadius: '8px' } }))), showButton && (h("div", { key: 'c856104db6f59b47e37e7fe6f95a8ee3e31222ad', class: "mt-3 ml-auto mr-auto w-72" }, h("button-base", { key: 'fa2584816a2ad234b5dff40bfcc8429f9e53c54b', onClick: e => {
52
+ return (h("div", { key: 'ecdefb641bc7130a7bb07f75a2933471fa303ea0', class: "p-4 overflow-y-auto" }, title && h("h1", { key: '69d5e23aa526fabf3ec018314e86e19476258c96', class: "nl-title font-bold text-center text-4xl" }, title), text && h("p", { key: '3793002a3df07b4265496800347f9e0022b038d6', class: "nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto" }, text), !state.njumpIframe && !state.authUrl && state.isLoading && (h("div", { key: '1f6c8d1703c6e91f0dac7d7ed5a180d46a42fa13', class: "mt-10 mb-10 ml-auto mr-auto w-20" }, h("span", { key: 'f2acbfc9842c172fd243c5073d21cbdc7fabf0d8', slot: "icon-start", class: "animate-spin-loading ml-auto mr-auto inline-block w-20 h-20 border-[4px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full", role: "status", "aria-label": "loading" }))), h("div", { key: '4aa61c9c0b389b6fe749fc5d21c28228a705400b', class: "ps-4 pe-4 overflow-y-auto" }, h("p", { key: '1a0f422073967d393351f004145f0acad510e2a3', class: "nl-error font-light text-center text-sm max-w-96 mx-auto" }, state.error)), iframeUrl && (h("div", { key: '57290bec52750bce0e3b5af1ec43d5fac91b1101', class: "mt-3 ml-auto mr-auto w-72 flex justify-center" }, h("iframe", { key: '453ee6680827453a5712aae2a645227e47f0d4f2', src: iframeUrl, width: "180px", height: "80px", style: { display: showIframe ? 'block' : 'none', border: '0' } }))), state.njumpIframe && (h("div", { key: 'd6ba8e495f0839ac467c7894f44e4a9274f93676', class: "mt-3 ml-auto mr-auto flex justify-center" }, h("iframe", { key: '6d73b2b122088d9753d780c3e86a79d9cda7c136', srcdoc: state.njumpIframe, width: "600px", style: { border: '0', height: '80vh', borderRadius: '8px' } }))), showButton && (h("div", { key: 'f7e211a252191a4028272e4effe4946a1fe7c21b', class: "mt-3 ml-auto mr-auto w-72" }, state.isLoading && !state.authUrl && h("p", { key: '6668418cb0c1893a4037a51acf99c35ca06df791', class: "nl-description font-light text-center text-xs mb-2 opacity-60" }, "Press Cancel to abort"), h("button-base", { key: 'a3f501308d46392302e6fd7161e367fb583e8942', onClick: e => {
53
53
  if (state.authUrl && !state.isLoading) {
54
54
  this.handleContinueClick(e);
55
55
  }
@@ -1 +1 @@
1
- {"file":"nl-loading2.js","mappings":"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","names":[],"sources":["src/components/nl-loading/nl-loading.css?tag=nl-loading","src/components/nl-loading/nl-loading.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, Prop, h } from '@stencil/core';\nimport { state } from '@/store';\nimport { CURRENT_MODULE } from '@/types';\n\n@Component({\n tag: 'nl-loading',\n styleUrl: 'nl-loading.css',\n shadow: false,\n})\nexport class NlLoading {\n @Event() nlStopFetch: EventEmitter<boolean>;\n @Event() nlContinue: EventEmitter<boolean>;\n @Prop() path: string;\n\n handleStop(e) {\n e.preventDefault();\n this.nlStopFetch.emit();\n }\n\n handleContinueClick(e) {\n e.preventDefault();\n // reset();\n this.nlContinue.emit();\n }\n\n render() {\n let title = 'Connecting...';\n let text = 'Establishing connection to your key storage.';\n if (state.njumpIframe) {\n title = '';\n text = '';\n } else if (this.path === CURRENT_MODULE.LOCAL_SIGNUP) {\n title = 'Creating...';\n text = 'Publishing your profile on Nostr.';\n } else if (state.authUrl) {\n if (state.isLoading) {\n title = 'Confirming...';\n text = 'Please confirm the connection in your key storage app.';\n } else {\n title = 'Almost ready!';\n text = 'Continue to confirm the connection to your key storage.';\n }\n }\n\n const showButton = this.path !== CURRENT_MODULE.LOCAL_SIGNUP;\n const showIframe = !state.isLoading && state.iframeUrl && state.authUrl;\n const iframeUrl = state.iframeUrl ? `${state.iframeUrl}?connect=${encodeURIComponent(state.authUrl)}` : '';\n\n return (\n <div class=\"p-4 overflow-y-auto\">\n {title && <h1 class=\"nl-title font-bold text-center text-4xl\">{title}</h1>}\n {text && <p class=\"nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto\">{text}</p>}\n {!state.njumpIframe && !state.authUrl && state.isLoading && (\n <div class=\"mt-10 mb-10 ml-auto mr-auto w-20\">\n <span\n slot=\"icon-start\"\n class=\"animate-spin-loading ml-auto mr-auto inline-block w-20 h-20 border-[4px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full\"\n role=\"status\"\n aria-label=\"loading\"\n ></span>\n </div>\n )}\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n {iframeUrl && (\n <div class=\"mt-3 ml-auto mr-auto w-72 flex justify-center\">\n <iframe src={iframeUrl} width=\"180px\" height=\"80px\" style={{ display: showIframe ? 'block' : 'none', border: '0' }}></iframe>\n </div>\n )}\n {state.njumpIframe && (\n <div class=\"mt-3 ml-auto mr-auto flex justify-center\">\n <iframe srcdoc={state.njumpIframe} width=\"600px\" style={{ border: '0', height: '80vh', borderRadius: '8px' }}></iframe>\n </div>\n )}\n {showButton && (\n <div class=\"mt-3 ml-auto mr-auto w-72\">\n <button-base\n onClick={e => {\n if (state.authUrl && !state.isLoading) {\n this.handleContinueClick(e);\n } else {\n this.handleStop(e);\n }\n }}\n titleBtn={!state.isLoading ? 'Continue' : 'Cancel'}\n />\n </div>\n )}\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-loading2.js","mappings":"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","names":[],"sources":["src/components/nl-loading/nl-loading.css?tag=nl-loading","src/components/nl-loading/nl-loading.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, Prop, h } from '@stencil/core';\nimport { state } from '@/store';\nimport { CURRENT_MODULE } from '@/types';\n\n@Component({\n tag: 'nl-loading',\n styleUrl: 'nl-loading.css',\n shadow: false,\n})\nexport class NlLoading {\n @Event() nlStopFetch: EventEmitter<boolean>;\n @Event() nlContinue: EventEmitter<boolean>;\n @Prop() path: string;\n\n handleStop(e) {\n e.preventDefault();\n this.nlStopFetch.emit();\n }\n\n handleContinueClick(e) {\n e.preventDefault();\n // reset();\n this.nlContinue.emit();\n }\n\n render() {\n let title = 'Connecting...';\n let text = 'Establishing connection to your key storage.';\n if (state.njumpIframe) {\n title = '';\n text = '';\n } else if (this.path === CURRENT_MODULE.LOCAL_SIGNUP) {\n title = 'Creating...';\n text = 'Publishing your profile on Nostr.';\n } else if (state.authUrl) {\n if (state.isLoading) {\n title = 'Confirming...';\n text = 'Please confirm the connection in your key storage app.';\n } else {\n title = 'Almost ready!';\n text = 'Continue to confirm the connection to your key storage.';\n }\n }\n\n const showButton = this.path !== CURRENT_MODULE.LOCAL_SIGNUP;\n const showIframe = !state.isLoading && state.iframeUrl && state.authUrl;\n const iframeUrl = state.iframeUrl ? `${state.iframeUrl}?connect=${encodeURIComponent(state.authUrl)}` : '';\n\n return (\n <div class=\"p-4 overflow-y-auto\">\n {title && <h1 class=\"nl-title font-bold text-center text-4xl\">{title}</h1>}\n {text && <p class=\"nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto\">{text}</p>}\n {!state.njumpIframe && !state.authUrl && state.isLoading && (\n <div class=\"mt-10 mb-10 ml-auto mr-auto w-20\">\n <span\n slot=\"icon-start\"\n class=\"animate-spin-loading ml-auto mr-auto inline-block w-20 h-20 border-[4px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full\"\n role=\"status\"\n aria-label=\"loading\"\n ></span>\n </div>\n )}\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n {iframeUrl && (\n <div class=\"mt-3 ml-auto mr-auto w-72 flex justify-center\">\n <iframe src={iframeUrl} width=\"180px\" height=\"80px\" style={{ display: showIframe ? 'block' : 'none', border: '0' }}></iframe>\n </div>\n )}\n {state.njumpIframe && (\n <div class=\"mt-3 ml-auto mr-auto flex justify-center\">\n <iframe srcdoc={state.njumpIframe} width=\"600px\" style={{ border: '0', height: '80vh', borderRadius: '8px' }}></iframe>\n </div>\n )}\n {showButton && (\n <div class=\"mt-3 ml-auto mr-auto w-72\">\n {state.isLoading && !state.authUrl && <p class=\"nl-description font-light text-center text-xs mb-2 opacity-60\">Press Cancel to abort</p>}\n <button-base\n onClick={e => {\n if (state.authUrl && !state.isLoading) {\n this.handleContinueClick(e);\n } else {\n this.handleStop(e);\n }\n }}\n titleBtn={!state.isLoading ? 'Continue' : 'Cancel'}\n />\n </div>\n )}\n </div>\n );\n }\n}\n"],"version":3}
@@ -34,7 +34,7 @@ const NlLocalSignup = /*@__PURE__*/ proxyCustomElement(class NlLocalSignup exten
34
34
  }
35
35
  }
36
36
  render() {
37
- return (h(Fragment, { key: 'a82dd2c2061fd35dc3e0fea186a96adbbd8c014a' }, h("div", { key: 'ba4799fc36360c9a1c3cd6ae3ebf6648c692a801', class: "p-4 overflow-y-auto" }, h("h1", { key: 'aa53a9645bc15e54653087e2e2865d0447509d7e', class: "nl-title font-bold text-center text-2xl" }, this.titleSignup), h("p", { key: '1bffb9657f8946210e9613c60e0f6b699657c696', class: "nl-description font-light text-center text-sm pt-2 max-w-96 mx-auto" }, this.signupNjump ? this.descriptionNjump : this.description)), h("div", { key: 'd09c7ecb4c4919dff636f9e864ae47a95ec16e05', class: "max-w-72 mx-auto" }, !this.signupNjump && (h("div", { key: '47c13c913387573f42717a44927e5d25b1eb14ae', class: "relative mb-2" }, h("input", { key: 'ed03046af288f41188ff7cfd512777b4d1047f63', onInput: e => this.handleInputChange(e), type: "text", class: "nl-input peer py-3 px-4 ps-11 block w-full border-transparent rounded-lg text-sm disabled:opacity-50 disabled:pointer-events-none dark:border-transparent", placeholder: "Enter username", "aria-label": "Username", value: state.nlSignup.signupName }), h("div", { key: 'b538a723c8d380ea00d01f532e575d6ee060d690', class: "absolute inset-y-0 start-0 flex items-center pointer-events-none ps-4 peer-disabled:opacity-50 peer-disabled:pointer-events-none" }, h("svg", { key: '9c94523bf652468ba536e4c928c931a2e35d2f97', xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "2", stroke: this.isAvailable ? '#00cc00' : 'currentColor', class: "flex-shrink-0 w-4 h-4 text-gray-500" }, h("path", { key: '8bdc63aeb69d243a489f6ba8bab6327151fb65f1', "stroke-linecap": "round", "stroke-linejoin": "round", d: "M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.501 20.118a7.5 7.5 0 0 1 14.998 0A17.933 17.933 0 0 1 12 21.75c-2.676 0-5.216-.584-7.499-1.632Z" }))))), h("div", { key: '26aa017c90784d2cda2384fc5d7f4eb4343755a4', class: "ps-4 pe-4 overflow-y-auto" }, h("p", { key: 'fcf29f2c2e80ec2c0841eb9ce4239e0fc33eea8a', class: "nl-error font-light text-center text-sm max-w-96 mx-auto" }, state.error)), h("button-base", { key: '2be044eb8d499db8c038c59f842de4a17690fddf', disabled: state.isLoading, onClick: e => this.handleCreateAccount(e), titleBtn: this.signupNjump ? 'Get started' : 'Create profile' }, state.isLoading ? (h("span", { slot: "icon-start", class: "animate-spin-loading inline-block w-4 h-4 border-[3px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full", role: "status", "aria-label": "loading" })) : (h("svg", { slot: "icon-start", style: { display: 'none' }, xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor" }, h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", d: "M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0 3.375 3.375 0 0 1 6.75 0ZM3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.318 12.318 0 0 1 9.374 21c-2.331 0-4.512-.645-6.374-1.766Z" })))))));
37
+ return (h(Fragment, { key: '3e8906bb9de3034c8b76670638c10c661f80b8bb' }, h("div", { key: '7a5b7a501504d2879074e0491d57c385dcb8769c', class: "p-4 overflow-y-auto" }, h("h1", { key: '074afb8fd61737d4c0f2a1f8608765a7cb1a5bcd', class: "nl-title font-bold text-center text-2xl" }, this.titleSignup), h("p", { key: '1bd3e83f502a72d39674b57d9f04886d532099c7', class: "nl-description font-light text-center text-sm pt-2 max-w-96 mx-auto" }, this.signupNjump ? this.descriptionNjump : this.description)), h("div", { key: '3753c42c51978863a8df5df094ad6245d16c3f90', class: "max-w-72 mx-auto" }, !this.signupNjump && (h("div", { key: 'dfae6c0888d86fa824d143217e3549bdc5d01dd2', class: "relative mb-2" }, h("input", { key: '7929902955995b41cb9e8f2d5f15346ed4d63bba', onInput: e => this.handleInputChange(e), type: "text", class: "nl-input peer py-3 px-4 ps-11 block w-full border-transparent rounded-lg text-sm disabled:opacity-50 disabled:pointer-events-none dark:border-transparent", placeholder: "Enter username", "aria-label": "Username", value: state.nlSignup.signupName }), h("div", { key: 'f263b33a868315dc8878d4af0ebaa7f1592f6ccf', class: "absolute inset-y-0 start-0 flex items-center pointer-events-none ps-4 peer-disabled:opacity-50 peer-disabled:pointer-events-none" }, h("svg", { key: 'ad22e33ecdd037bb45c3d38a9fc287c305232e05', xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "2", stroke: this.isAvailable ? '#00cc00' : 'currentColor', class: "flex-shrink-0 w-4 h-4 text-gray-500" }, h("path", { key: '90e21fe7fd62c9f3c5b436b394856b8440abb779', "stroke-linecap": "round", "stroke-linejoin": "round", d: "M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.501 20.118a7.5 7.5 0 0 1 14.998 0A17.933 17.933 0 0 1 12 21.75c-2.676 0-5.216-.584-7.499-1.632Z" }))))), h("div", { key: '4ed11c5153918d9e296b5660be1c567e45005785', class: "ps-4 pe-4 overflow-y-auto" }, h("p", { key: 'af49b02ecaa19192f6501c943aa186db34c389a6', class: "nl-error font-light text-center text-sm max-w-96 mx-auto" }, state.error)), h("button-base", { key: 'daab1e259b7837cb4218f20ddc44600b807daf5e', disabled: state.isLoading, onClick: e => this.handleCreateAccount(e), titleBtn: this.signupNjump ? 'Get started' : 'Create profile' }, state.isLoading ? (h("span", { slot: "icon-start", class: "animate-spin-loading inline-block w-4 h-4 border-[3px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full", role: "status", "aria-label": "loading" })) : (h("svg", { slot: "icon-start", style: { display: 'none' }, xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor" }, h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", d: "M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0 3.375 3.375 0 0 1 6.75 0ZM3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.318 12.318 0 0 1 9.374 21c-2.331 0-4.512-.645-6.374-1.766Z" })))))));
38
38
  }
39
39
  static get style() { return NlLocalSignupStyle0; }
40
40
  }, [0, "nl-local-signup", {
@@ -1 +1 @@
1
- {"file":"nl-local-signup2.js","mappings":";;;;AAAA,MAAM,gBAAgB,GAAG,gq3CAAgq3C,CAAC;AAC1r3C,4BAAe,gBAAgB;;MCOlB,aAAa;;;;;;;2BACF,sBAAsB;2BACtB,sDAAsD;gCACjD,sDAAsD;2BAC3D,KAAK;2BAEJ,KAAK;;IAO5B,iBAAiB,CAAC,KAAY;QAC5B,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;;KAEtE;IAED,mBAAmB,CAAC,CAAa;QAC/B,CAAC,CAAC,cAAc,EAAE,CAAC;QAEnB,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;SAC3B;aAAM;YACL,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;SACzD;KACF;IAED,MAAM;QACJ,QACE,EAAC,QAAQ,uDACP,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,2DAAI,KAAK,EAAC,yCAAyC,IAAE,IAAI,CAAC,WAAW,CAAM,EAC3E,0DAAG,KAAK,EAAC,qEAAqE,IAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAK,CAC5I,EAEN,4DAAK,KAAK,EAAC,kBAAkB,IAC1B,CAAC,IAAI,CAAC,WAAW,KAChB,4DAAK,KAAK,EAAC,eAAe,IACxB,8DACE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EACvC,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,2JAA2J,EACjK,WAAW,EAAC,gBAAgB,gBACjB,UAAU,EACrB,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,UAAU,GAChC,EACF,4DAAK,KAAK,EAAC,kIAAkI,IAC3I,4DACE,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,WAAW,kBACN,GAAG,EAChB,MAAM,EAAE,IAAI,CAAC,WAAW,GAAG,SAAS,GAAG,cAAc,EACrD,KAAK,EAAC,qCAAqC,IAE3C,+EACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,yJAAyJ,GAC3J,CACE,CACF,CACF,CACP,EAED,4DAAK,KAAK,EAAC,2BAA2B,IACpC,0DAAG,KAAK,EAAC,0DAA0D,IAAE,KAAK,CAAC,KAAK,CAAK,CACjF,EAEN,oEAAa,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,GAAG,aAAa,GAAG,gBAAgB,IAC7I,KAAK,CAAC,SAAS,IACd,YACE,IAAI,EAAC,YAAY,EACjB,KAAK,EAAC,2IAA2I,EACjJ,IAAI,EAAC,QAAQ,gBACF,SAAS,GACd,KAER,WAAK,IAAI,EAAC,YAAY,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,kBAAc,KAAK,EAAC,MAAM,EAAC,cAAc,IAC5J,8BACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,yMAAyM,GAC3M,CACE,CACP,CACW,CACV,CACG,EACX;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-local-signup/nl-local-signup.css?tag=nl-local-signup","src/components/nl-local-signup/nl-local-signup.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h, Fragment, State, Prop, Event, EventEmitter } from '@stencil/core';\nimport { state } from '@/store';\n\n@Component({\n tag: 'nl-local-signup',\n styleUrl: 'nl-local-signup.css',\n shadow: false,\n})\nexport class NlLocalSignup {\n @Prop() titleSignup = 'Create Nostr profile';\n @Prop() description = 'Choose any username, you can always change it later.';\n @Prop() descriptionNjump = 'Proceed to creating your Nostr profile in a new tab.';\n @Prop() signupNjump = false;\n\n @State() isAvailable = false;\n\n @Event() nlLocalSignup: EventEmitter<string>;\n @Event() nlSignupNjump: EventEmitter<void>;\n // @Event() nlCheckSignup: EventEmitter<string>;\n @Event() nlFetchStatus: EventEmitter<boolean>;\n\n handleInputChange(event: Event) {\n state.nlSignup.signupName = (event.target as HTMLInputElement).value;\n // this.nlCheckSignup.emit(`${(event.target as HTMLInputElement).value}@${state.nlSignup.domain}`);\n }\n\n handleCreateAccount(e: MouseEvent) {\n e.preventDefault();\n\n if (this.signupNjump) {\n this.nlSignupNjump.emit();\n } else {\n this.nlLocalSignup.emit(`${state.nlSignup.signupName}`);\n }\n }\n\n render() {\n return (\n <Fragment>\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-2xl\">{this.titleSignup}</h1>\n <p class=\"nl-description font-light text-center text-sm pt-2 max-w-96 mx-auto\">{this.signupNjump ? this.descriptionNjump : this.description}</p>\n </div>\n\n <div class=\"max-w-72 mx-auto\">\n {!this.signupNjump && (\n <div class=\"relative mb-2\">\n <input\n onInput={e => this.handleInputChange(e)}\n type=\"text\"\n class=\"nl-input peer py-3 px-4 ps-11 block w-full border-transparent rounded-lg text-sm disabled:opacity-50 disabled:pointer-events-none dark:border-transparent\"\n placeholder=\"Enter username\"\n aria-label=\"Username\"\n value={state.nlSignup.signupName}\n />\n <div class=\"absolute inset-y-0 start-0 flex items-center pointer-events-none ps-4 peer-disabled:opacity-50 peer-disabled:pointer-events-none\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke-width=\"2\"\n stroke={this.isAvailable ? '#00cc00' : 'currentColor'}\n class=\"flex-shrink-0 w-4 h-4 text-gray-500\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.501 20.118a7.5 7.5 0 0 1 14.998 0A17.933 17.933 0 0 1 12 21.75c-2.676 0-5.216-.584-7.499-1.632Z\"\n />\n </svg>\n </div>\n </div>\n )}\n\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n\n <button-base disabled={state.isLoading} onClick={e => this.handleCreateAccount(e)} titleBtn={this.signupNjump ? 'Get started' : 'Create profile'}>\n {state.isLoading ? (\n <span\n slot=\"icon-start\"\n class=\"animate-spin-loading inline-block w-4 h-4 border-[3px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full\"\n role=\"status\"\n aria-label=\"loading\"\n ></span>\n ) : (\n <svg slot=\"icon-start\" style={{ display: 'none' }} xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0 3.375 3.375 0 0 1 6.75 0ZM3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.318 12.318 0 0 1 9.374 21c-2.331 0-4.512-.645-6.374-1.766Z\"\n />\n </svg>\n )}\n </button-base>\n </div>\n </Fragment>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-local-signup2.js","mappings":";;;;AAAA,MAAM,gBAAgB,GAAG,mt3CAAmt3C,CAAC;AAC7u3C,4BAAe,gBAAgB;;MCOlB,aAAa;;;;;;;2BACF,sBAAsB;2BACtB,sDAAsD;gCACjD,sDAAsD;2BAC3D,KAAK;2BAEJ,KAAK;;IAO5B,iBAAiB,CAAC,KAAY;QAC5B,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;;KAEtE;IAED,mBAAmB,CAAC,CAAa;QAC/B,CAAC,CAAC,cAAc,EAAE,CAAC;QAEnB,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;SAC3B;aAAM;YACL,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;SACzD;KACF;IAED,MAAM;QACJ,QACE,EAAC,QAAQ,uDACP,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,2DAAI,KAAK,EAAC,yCAAyC,IAAE,IAAI,CAAC,WAAW,CAAM,EAC3E,0DAAG,KAAK,EAAC,qEAAqE,IAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAK,CAC5I,EAEN,4DAAK,KAAK,EAAC,kBAAkB,IAC1B,CAAC,IAAI,CAAC,WAAW,KAChB,4DAAK,KAAK,EAAC,eAAe,IACxB,8DACE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EACvC,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,2JAA2J,EACjK,WAAW,EAAC,gBAAgB,gBACjB,UAAU,EACrB,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,UAAU,GAChC,EACF,4DAAK,KAAK,EAAC,kIAAkI,IAC3I,4DACE,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,WAAW,kBACN,GAAG,EAChB,MAAM,EAAE,IAAI,CAAC,WAAW,GAAG,SAAS,GAAG,cAAc,EACrD,KAAK,EAAC,qCAAqC,IAE3C,+EACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,yJAAyJ,GAC3J,CACE,CACF,CACF,CACP,EAED,4DAAK,KAAK,EAAC,2BAA2B,IACpC,0DAAG,KAAK,EAAC,0DAA0D,IAAE,KAAK,CAAC,KAAK,CAAK,CACjF,EAEN,oEAAa,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,GAAG,aAAa,GAAG,gBAAgB,IAC7I,KAAK,CAAC,SAAS,IACd,YACE,IAAI,EAAC,YAAY,EACjB,KAAK,EAAC,2IAA2I,EACjJ,IAAI,EAAC,QAAQ,gBACF,SAAS,GACd,KAER,WAAK,IAAI,EAAC,YAAY,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,kBAAc,KAAK,EAAC,MAAM,EAAC,cAAc,IAC5J,8BACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,yMAAyM,GAC3M,CACE,CACP,CACW,CACV,CACG,EACX;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-local-signup/nl-local-signup.css?tag=nl-local-signup","src/components/nl-local-signup/nl-local-signup.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h, Fragment, State, Prop, Event, EventEmitter } from '@stencil/core';\nimport { state } from '@/store';\n\n@Component({\n tag: 'nl-local-signup',\n styleUrl: 'nl-local-signup.css',\n shadow: false,\n})\nexport class NlLocalSignup {\n @Prop() titleSignup = 'Create Nostr profile';\n @Prop() description = 'Choose any username, you can always change it later.';\n @Prop() descriptionNjump = 'Proceed to creating your Nostr profile in a new tab.';\n @Prop() signupNjump = false;\n\n @State() isAvailable = false;\n\n @Event() nlLocalSignup: EventEmitter<string>;\n @Event() nlSignupNjump: EventEmitter<void>;\n // @Event() nlCheckSignup: EventEmitter<string>;\n @Event() nlFetchStatus: EventEmitter<boolean>;\n\n handleInputChange(event: Event) {\n state.nlSignup.signupName = (event.target as HTMLInputElement).value;\n // this.nlCheckSignup.emit(`${(event.target as HTMLInputElement).value}@${state.nlSignup.domain}`);\n }\n\n handleCreateAccount(e: MouseEvent) {\n e.preventDefault();\n\n if (this.signupNjump) {\n this.nlSignupNjump.emit();\n } else {\n this.nlLocalSignup.emit(`${state.nlSignup.signupName}`);\n }\n }\n\n render() {\n return (\n <Fragment>\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-2xl\">{this.titleSignup}</h1>\n <p class=\"nl-description font-light text-center text-sm pt-2 max-w-96 mx-auto\">{this.signupNjump ? this.descriptionNjump : this.description}</p>\n </div>\n\n <div class=\"max-w-72 mx-auto\">\n {!this.signupNjump && (\n <div class=\"relative mb-2\">\n <input\n onInput={e => this.handleInputChange(e)}\n type=\"text\"\n class=\"nl-input peer py-3 px-4 ps-11 block w-full border-transparent rounded-lg text-sm disabled:opacity-50 disabled:pointer-events-none dark:border-transparent\"\n placeholder=\"Enter username\"\n aria-label=\"Username\"\n value={state.nlSignup.signupName}\n />\n <div class=\"absolute inset-y-0 start-0 flex items-center pointer-events-none ps-4 peer-disabled:opacity-50 peer-disabled:pointer-events-none\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke-width=\"2\"\n stroke={this.isAvailable ? '#00cc00' : 'currentColor'}\n class=\"flex-shrink-0 w-4 h-4 text-gray-500\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.501 20.118a7.5 7.5 0 0 1 14.998 0A17.933 17.933 0 0 1 12 21.75c-2.676 0-5.216-.584-7.499-1.632Z\"\n />\n </svg>\n </div>\n </div>\n )}\n\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n\n <button-base disabled={state.isLoading} onClick={e => this.handleCreateAccount(e)} titleBtn={this.signupNjump ? 'Get started' : 'Create profile'}>\n {state.isLoading ? (\n <span\n slot=\"icon-start\"\n class=\"animate-spin-loading inline-block w-4 h-4 border-[3px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full\"\n role=\"status\"\n aria-label=\"loading\"\n ></span>\n ) : (\n <svg slot=\"icon-start\" style={{ display: 'none' }} xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0 3.375 3.375 0 0 1 6.75 0ZM3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.318 12.318 0 0 1 9.374 21c-2.331 0-4.512-.645-6.374-1.766Z\"\n />\n </svg>\n )}\n </button-base>\n </div>\n </Fragment>\n );\n }\n}\n"],"version":3}
@@ -39,12 +39,12 @@ const NlNip46RelaySettings = /*@__PURE__*/ proxyCustomElement(class NlNip46Relay
39
39
  this.nlRelaysChanged.emit(this.relays);
40
40
  }
41
41
  render() {
42
- return (h("div", { key: 'b21c3d9935218ccd1d552b9f635bd2a5577f50c0', class: "nip46-relay-settings mb-4" }, h("button", { key: 'aa9bd7bb3bd4310b1a02edfc1c010a7907dc79ce', type: "button", class: "text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 underline cursor-pointer", onClick: () => (this.showSettings = !this.showSettings) }, this.showSettings ? '▼' : '▶', " Advanced: Relay Settings"), this.showSettings && (h("div", { key: 'bfafd2a8bfae6b9829c553f286d5d80f16011b2e', class: "mt-2 p-3 border border-gray-300 dark:border-gray-600 rounded bg-gray-50 dark:bg-gray-800" }, h("div", { key: '6bcfc31c24f3eb074e0101cdb319b19806550db9', class: "flex justify-between items-center mb-2" }, h("div", { key: '32d87ef74ecfd3f330ce88ab1802878bed40d680', class: "text-xs font-semibold text-gray-700 dark:text-gray-300" }, "Nip46 Relays:"), h("button", { key: '26c7843cff229b73d33e86238eadbbdbde33955e', type: "button", class: "text-xs text-blue-500 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300 underline cursor-pointer", onClick: () => this.resetToDefaults() }, "Reset to defaults")), h("ul", { key: 'd6419de90eb296e91df6e6ede131d41c22d9e0e8', class: "text-xs mb-3 space-y-1" }, this.relays.map((relay, index) => (h("li", { class: "flex justify-between items-center py-1 px-2 bg-white dark:bg-gray-700 rounded" }, h("span", { class: "truncate text-gray-700 dark:text-gray-300 flex-1" }, relay), h("button", { type: "button", class: "ml-2 text-red-500 hover:text-red-700 dark:text-red-400 dark:hover:text-red-300 font-bold cursor-pointer", onClick: () => this.removeRelay(index), title: "Remove relay" }, "\u2715"))))), h("div", { key: '0544da279bb32591f78dff61ecb5372e3a069b06', class: "flex gap-2" }, h("input", { key: 'b9ac07ab15fcc2a1b242b458153bde8c2edbfcd1', type: "text", class: "flex-1 text-xs px-2 py-1.5 border border-gray-300 dark:border-gray-600 rounded bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100", placeholder: "wss://relay.example.com", "aria-label": "Relay URL", value: this.newRelay, onInput: e => (this.newRelay = e.target.value), onKeyDown: e => {
42
+ return (h("div", { key: '693c5ef9c605ceac235c183aa96a25f33cc51df0', class: "nip46-relay-settings mb-4" }, h("button", { key: '7862c96bc6bc3c20fad3cc665b21d88b7c1237e1', type: "button", class: "text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 underline cursor-pointer", onClick: () => (this.showSettings = !this.showSettings) }, this.showSettings ? '▼' : '▶', " Advanced: Relay Settings"), this.showSettings && (h("div", { key: '0444e92f609e85799d2a0faba4dd88e4714e9bca', class: "mt-2 p-3 border border-gray-300 dark:border-gray-600 rounded bg-gray-50 dark:bg-gray-800" }, h("div", { key: 'ab3c1c47cc7a524502cc7d61fceebc2c1e037add', class: "flex justify-between items-center mb-2" }, h("div", { key: 'f2d9dd1da2eee41dd1a6b983b6985d90a813bc92', class: "text-xs font-semibold text-gray-700 dark:text-gray-300" }, "Nip46 Relays:"), h("button", { key: '3221bcf2475e96d8602b8a5c2ed7c864594b209c', type: "button", class: "text-xs text-blue-500 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300 underline cursor-pointer", onClick: () => this.resetToDefaults() }, "Reset to defaults")), h("ul", { key: '5d133c3eb3395109e0483f8e3b2a62339010310d', class: "text-xs mb-3 space-y-1" }, this.relays.map((relay, index) => (h("li", { class: "flex justify-between items-center py-1 px-2 bg-white dark:bg-gray-700 rounded" }, h("span", { class: "truncate text-gray-700 dark:text-gray-300 flex-1" }, relay), h("button", { type: "button", class: "ml-2 text-red-500 hover:text-red-700 dark:text-red-400 dark:hover:text-red-300 font-bold cursor-pointer", onClick: () => this.removeRelay(index), title: "Remove relay" }, "\u2715"))))), h("div", { key: '0ba060f9dd7c42dfdd672ef7560db03f30b5f631', class: "flex gap-2" }, h("input", { key: '6a65424f10bfe8f2078fe055a46f2b63ebffd730', type: "text", class: "flex-1 text-xs px-2 py-1.5 border border-gray-300 dark:border-gray-600 rounded bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100", placeholder: "wss://relay.example.com", "aria-label": "Relay URL", value: this.newRelay, onInput: e => (this.newRelay = e.target.value), onKeyDown: e => {
43
43
  if (e.key === 'Enter') {
44
44
  e.preventDefault();
45
45
  this.addRelay();
46
46
  }
47
- } }), h("button", { key: '1d135e0cf1e53407c9b435f41461ccc32db61f9a', type: "button", class: "text-xs px-3 py-1.5 bg-blue-500 hover:bg-blue-600 text-white rounded cursor-pointer", onClick: () => this.addRelay() }, "Add"))))));
47
+ } }), h("button", { key: 'ca2613f85624b972c3021bee08505f77195f51dd', type: "button", class: "text-xs px-3 py-1.5 bg-blue-500 hover:bg-blue-600 text-white rounded cursor-pointer", onClick: () => this.addRelay() }, "Add"))))));
48
48
  }
49
49
  static get style() { return NlNip46RelaySettingsStyle0; }
50
50
  }, [0, "nl-nip46-relay-settings", {
@@ -1 +1 @@
1
- {"file":"nl-nip46-relay-settings2.js","mappings":"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","names":[],"sources":["src/components/nl-nip46-relay-settings/nl-nip46-relay-settings.css?tag=nl-nip46-relay-settings","src/components/nl-nip46-relay-settings/nl-nip46-relay-settings.tsx"],"sourcesContent":[".nip46-relay-settings {\n /* スタイルは既存のコンポーネントを参考に必要に応じて追加 */\n}\n","import { Component, h, State, Event, EventEmitter, Prop } from '@stencil/core';\n\n/** リセット時に戻すハードコード済みデフォルトリレー */\nconst FACTORY_DEFAULT_RELAYS = ['wss://relay.nsec.app/', 'wss://ephemeral.snowflare.cc/'];\n\n@Component({\n tag: 'nl-nip46-relay-settings',\n styleUrl: 'nl-nip46-relay-settings.css',\n shadow: false,\n})\nexport class NlNip46RelaySettings {\n /** 親から渡される現在のリレーリスト(localStorage由来の場合あり) */\n @Prop() defaultRelays: string[] = [...FACTORY_DEFAULT_RELAYS];\n\n @State() relays: string[] = [];\n @State() newRelay: string = '';\n @State() showSettings: boolean = false;\n\n @Event() nlRelaysChanged: EventEmitter<string[]>;\n\n componentWillLoad() {\n this.relays = [...this.defaultRelays];\n }\n\n addRelay() {\n const relay = this.newRelay.trim();\n if (relay && (relay.startsWith('wss://') || relay.startsWith('ws://'))) {\n if (!this.relays.includes(relay)) {\n this.relays = [...this.relays, relay];\n this.newRelay = '';\n this.nlRelaysChanged.emit(this.relays);\n }\n }\n }\n\n removeRelay(index: number) {\n this.relays = this.relays.filter((_, i) => i !== index);\n this.nlRelaysChanged.emit(this.relays);\n }\n\n resetToDefaults() {\n this.relays = [...FACTORY_DEFAULT_RELAYS];\n this.nlRelaysChanged.emit(this.relays);\n }\n\n render() {\n return (\n <div class=\"nip46-relay-settings mb-4\">\n <button\n type=\"button\"\n class=\"text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 underline cursor-pointer\"\n onClick={() => (this.showSettings = !this.showSettings)}\n >\n {this.showSettings ? '▼' : '▶'} Advanced: Relay Settings\n </button>\n\n {this.showSettings && (\n <div class=\"mt-2 p-3 border border-gray-300 dark:border-gray-600 rounded bg-gray-50 dark:bg-gray-800\">\n <div class=\"flex justify-between items-center mb-2\">\n <div class=\"text-xs font-semibold text-gray-700 dark:text-gray-300\">Nip46 Relays:</div>\n <button\n type=\"button\"\n class=\"text-xs text-blue-500 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300 underline cursor-pointer\"\n onClick={() => this.resetToDefaults()}\n >\n Reset to defaults\n </button>\n </div>\n\n <ul class=\"text-xs mb-3 space-y-1\">\n {this.relays.map((relay, index) => (\n <li class=\"flex justify-between items-center py-1 px-2 bg-white dark:bg-gray-700 rounded\">\n <span class=\"truncate text-gray-700 dark:text-gray-300 flex-1\">{relay}</span>\n <button\n type=\"button\"\n class=\"ml-2 text-red-500 hover:text-red-700 dark:text-red-400 dark:hover:text-red-300 font-bold cursor-pointer\"\n onClick={() => this.removeRelay(index)}\n title=\"Remove relay\"\n >\n ✕\n </button>\n </li>\n ))}\n </ul>\n\n <div class=\"flex gap-2\">\n <input\n type=\"text\"\n class=\"flex-1 text-xs px-2 py-1.5 border border-gray-300 dark:border-gray-600 rounded bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100\"\n placeholder=\"wss://relay.example.com\"\n aria-label=\"Relay URL\"\n value={this.newRelay}\n onInput={e => (this.newRelay = (e.target as HTMLInputElement).value)}\n onKeyDown={e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n this.addRelay();\n }\n }}\n />\n <button type=\"button\" class=\"text-xs px-3 py-1.5 bg-blue-500 hover:bg-blue-600 text-white rounded cursor-pointer\" onClick={() => this.addRelay()}>\n Add\n </button>\n </div>\n </div>\n )}\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-nip46-relay-settings2.js","mappings":"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","names":[],"sources":["src/components/nl-nip46-relay-settings/nl-nip46-relay-settings.css?tag=nl-nip46-relay-settings","src/components/nl-nip46-relay-settings/nl-nip46-relay-settings.tsx"],"sourcesContent":[".nip46-relay-settings {\n /* スタイルは既存のコンポーネントを参考に必要に応じて追加 */\n}\n","import { Component, h, State, Event, EventEmitter, Prop } from '@stencil/core';\n\n/** リセット時に戻すハードコード済みデフォルトリレー */\nconst FACTORY_DEFAULT_RELAYS = ['wss://relay.nsec.app/', 'wss://ephemeral.snowflare.cc/'];\n\n@Component({\n tag: 'nl-nip46-relay-settings',\n styleUrl: 'nl-nip46-relay-settings.css',\n shadow: false,\n})\nexport class NlNip46RelaySettings {\n /** 親から渡される現在のリレーリスト(localStorage由来の場合あり) */\n @Prop() defaultRelays: string[] = [...FACTORY_DEFAULT_RELAYS];\n\n @State() relays: string[] = [];\n @State() newRelay: string = '';\n @State() showSettings: boolean = false;\n\n @Event() nlRelaysChanged: EventEmitter<string[]>;\n\n componentWillLoad() {\n this.relays = [...this.defaultRelays];\n }\n\n addRelay() {\n const relay = this.newRelay.trim();\n if (relay && (relay.startsWith('wss://') || relay.startsWith('ws://'))) {\n if (!this.relays.includes(relay)) {\n this.relays = [...this.relays, relay];\n this.newRelay = '';\n this.nlRelaysChanged.emit(this.relays);\n }\n }\n }\n\n removeRelay(index: number) {\n this.relays = this.relays.filter((_, i) => i !== index);\n this.nlRelaysChanged.emit(this.relays);\n }\n\n resetToDefaults() {\n this.relays = [...FACTORY_DEFAULT_RELAYS];\n this.nlRelaysChanged.emit(this.relays);\n }\n\n render() {\n return (\n <div class=\"nip46-relay-settings mb-4\">\n <button\n type=\"button\"\n class=\"text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 underline cursor-pointer\"\n onClick={() => (this.showSettings = !this.showSettings)}\n >\n {this.showSettings ? '▼' : '▶'} Advanced: Relay Settings\n </button>\n\n {this.showSettings && (\n <div class=\"mt-2 p-3 border border-gray-300 dark:border-gray-600 rounded bg-gray-50 dark:bg-gray-800\">\n <div class=\"flex justify-between items-center mb-2\">\n <div class=\"text-xs font-semibold text-gray-700 dark:text-gray-300\">Nip46 Relays:</div>\n <button\n type=\"button\"\n class=\"text-xs text-blue-500 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300 underline cursor-pointer\"\n onClick={() => this.resetToDefaults()}\n >\n Reset to defaults\n </button>\n </div>\n\n <ul class=\"text-xs mb-3 space-y-1\">\n {this.relays.map((relay, index) => (\n <li class=\"flex justify-between items-center py-1 px-2 bg-white dark:bg-gray-700 rounded\">\n <span class=\"truncate text-gray-700 dark:text-gray-300 flex-1\">{relay}</span>\n <button\n type=\"button\"\n class=\"ml-2 text-red-500 hover:text-red-700 dark:text-red-400 dark:hover:text-red-300 font-bold cursor-pointer\"\n onClick={() => this.removeRelay(index)}\n title=\"Remove relay\"\n >\n ✕\n </button>\n </li>\n ))}\n </ul>\n\n <div class=\"flex gap-2\">\n <input\n type=\"text\"\n class=\"flex-1 text-xs px-2 py-1.5 border border-gray-300 dark:border-gray-600 rounded bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100\"\n placeholder=\"wss://relay.example.com\"\n aria-label=\"Relay URL\"\n value={this.newRelay}\n onInput={e => (this.newRelay = (e.target as HTMLInputElement).value)}\n onKeyDown={e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n this.addRelay();\n }\n }}\n />\n <button type=\"button\" class=\"text-xs px-3 py-1.5 bg-blue-500 hover:bg-blue-600 text-white rounded cursor-pointer\" onClick={() => this.addRelay()}>\n Add\n </button>\n </div>\n </div>\n )}\n </div>\n );\n }\n}\n"],"version":3}
@@ -28,7 +28,7 @@ const NlImportFlow = /*@__PURE__*/ proxyCustomElement(class NlImportFlow extends
28
28
  }
29
29
  render() {
30
30
  const options = this.services.filter(s => s.canImport).map(s => ({ name: s.domain, value: s.domain }));
31
- return (h(Fragment, { key: '12693d07250ca52865a5a04d454e11e43b651e13' }, h("div", { key: '1fa49c196cfb54cc7da20925dc61490d3cea4f1d', class: "p-4 overflow-y-auto" }, h("h1", { key: 'ff29ef7de0954e75bf17ee260eea556ba364ecdd', class: "nl-title font-bold text-center text-2xl" }, this.titleImport), h("p", { key: '626e164f92be79d655384e631c982bc4e06fdbfc', class: "nl-description font-light text-center text-sm pt-2 max-w-96 mx-auto" }, this.textImport)), h("div", { key: '7d3b75101d0531c41a7bfcbb5ece1ffa67821810', class: "max-w-72 mx-auto mb-5" }, h("div", { key: '7a11b1c4668f0172ce4535fe0c4931221b147509', class: "mb-0.5" }, h("nl-select", { key: '1c7dbbd077d06f19745f2c53d1100b74e5498a17', onSelectDomain: e => this.handleDomainSelect(e), selected: 0, options: options })), h("p", { key: 'da6a4528697951de8b31b4697ba9b19d71b33b4f', class: "nl-title font-light text-sm mb-2" }, "Default provider is a fine choice to start with."), h("div", { key: 'a57b965e8ad521ab36d81d8962a723ddfa735757', class: "ps-4 pe-4 overflow-y-auto" }, h("p", { key: 'cb748be936c8204d67b1fa49fe2f2f8ed11cb604', class: "nl-error font-light text-center text-sm max-w-96 mx-auto" }, state.error)), h("button-base", { key: 'dd31a190750a945c5a4f71830e8177bd7172a7bc', disabled: state.isLoading, onClick: e => this.handleCreateAccount(e), titleBtn: "Start importing" }, state.isLoading ? (h("span", { slot: "icon-start", class: "animate-spin-loading inline-block w-4 h-4 border-[3px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full", role: "status", "aria-label": "loading" })) : (h("svg", { slot: "icon-start", style: { display: 'none' }, xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor" }, h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", d: "M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0 3.375 3.375 0 0 1 6.75 0ZM3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.318 12.318 0 0 1 9.374 21c-2.331 0-4.512-.645-6.374-1.766Z" })))))));
31
+ return (h(Fragment, { key: '291bcf9e0a6318363f16b249444b9060152ed9c4' }, h("div", { key: '56eab64986ad5a28a63d801878976b3144a2122b', class: "p-4 overflow-y-auto" }, h("h1", { key: '543c18bd6b6e6b425a4c411b718ff4f69b242876', class: "nl-title font-bold text-center text-2xl" }, this.titleImport), h("p", { key: 'ab4c376a7b74b651592c4cc32d9a0766fa4539fd', class: "nl-description font-light text-center text-sm pt-2 max-w-96 mx-auto" }, this.textImport)), h("div", { key: '65b00f94f0b6a0bc7617f1e4c38fc14f2c6590e6', class: "max-w-72 mx-auto mb-5" }, h("div", { key: 'ae35ac61777cc37d8e8fb18da108d1f37b65856c', class: "mb-0.5" }, h("nl-select", { key: '1a0dbb5e190e0d14dce746a0078a6cdf90eeefcb', onSelectDomain: e => this.handleDomainSelect(e), selected: 0, options: options })), h("p", { key: '508ffb4f02ac5dda5abcfd715ec42e3178294e59', class: "nl-title font-light text-sm mb-2" }, "Default provider is a fine choice to start with."), h("div", { key: '7cbd82a4b7209d0864c2e07131d09d2d351fe79b', class: "ps-4 pe-4 overflow-y-auto" }, h("p", { key: 'f5720afc2015bbdb181482a3b2f8e0d755de50d6', class: "nl-error font-light text-center text-sm max-w-96 mx-auto" }, state.error)), h("button-base", { key: '59042806e5920f6f41a8da110c002838956b09cf', disabled: state.isLoading, onClick: e => this.handleCreateAccount(e), titleBtn: "Start importing" }, state.isLoading ? (h("span", { slot: "icon-start", class: "animate-spin-loading inline-block w-4 h-4 border-[3px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full", role: "status", "aria-label": "loading" })) : (h("svg", { slot: "icon-start", style: { display: 'none' }, xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor" }, h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", d: "M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0 3.375 3.375 0 0 1 6.75 0ZM3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.318 12.318 0 0 1 9.374 21c-2.331 0-4.512-.645-6.374-1.766Z" })))))));
32
32
  }
33
33
  static get style() { return NlOtpMigrateStyle0; }
34
34
  }, [0, "nl-otp-migrate", {
@@ -1 +1 @@
1
- {"file":"nl-otp-migrate2.js","mappings":";;;;;AAAA,MAAM,eAAe,GAAG,gq3CAAgq3C,CAAC;AACzr3C,2BAAe,eAAe;;MCQjB,YAAY;;;;;yBACc,gCAAgC;2BAC/C,kBAAkB;0BACnB,wGAAwG;wBACtF,EAAE;;IAIzC,kBAAkB,CAAC,KAA0B;QAC3C,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7D,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC;KACpB;IAED,mBAAmB,CAAC,CAAa;QAC/B,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;KAC3C;IAED,MAAM;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAO,EAAE,KAAK,EAAE,CAAC,CAAC,MAAO,EAAE,CAAC,CAAC,CAAC;QAEzG,QACE,EAAC,QAAQ,uDACP,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,2DAAI,KAAK,EAAC,yCAAyC,IAAE,IAAI,CAAC,WAAW,CAAM,EAC3E,0DAAG,KAAK,EAAC,qEAAqE,IAAE,IAAI,CAAC,UAAU,CAAK,CAChG,EAEN,4DAAK,KAAK,EAAC,uBAAuB,IAChC,4DAAK,KAAK,EAAC,QAAQ,IACjB,kEAAW,cAAc,EAAE,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,GAAc,CACnG,EACN,0DAAG,KAAK,EAAC,kCAAkC,uDAAqD,EAEhG,4DAAK,KAAK,EAAC,2BAA2B,IACpC,0DAAG,KAAK,EAAC,0DAA0D,IAAE,KAAK,CAAC,KAAK,CAAK,CACjF,EAEN,oEAAa,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAC,iBAAiB,IAC1G,KAAK,CAAC,SAAS,IACd,YACE,IAAI,EAAC,YAAY,EACjB,KAAK,EAAC,2IAA2I,EACjJ,IAAI,EAAC,QAAQ,gBACF,SAAS,GACd,KAER,WAAK,IAAI,EAAC,YAAY,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,kBAAc,KAAK,EAAC,MAAM,EAAC,cAAc,IAC5J,8BACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,yMAAyM,GAC3M,CACE,CACP,CACW,CACV,CACG,EACX;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-otp-migrate/nl-otp-migrate.css?tag=nl-otp-migrate","src/components/nl-otp-migrate/nl-otp-migrate.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h, Fragment, Prop, Event, EventEmitter } from '@stencil/core';\nimport { state } from '@/store';\nimport { ConnectionString } from '@/types';\n\n@Component({\n tag: 'nl-otp-migrate',\n styleUrl: 'nl-otp-migrate.css',\n shadow: false,\n})\nexport class NlImportFlow {\n @Prop({ mutable: true }) titleInfo = 'Import keys to storage service';\n @Prop() titleImport = 'Choose a service';\n @Prop() textImport = 'You will be prompted to import keys to the chosen service, and this website will connect to your keys.';\n @Prop() services: ConnectionString[] = [];\n\n @Event() nlImportAccount: EventEmitter<ConnectionString>;\n\n handleDomainSelect(event: CustomEvent<string>) {\n const s = this.services.find(s => s.domain === event.detail);\n state.nlImport = s;\n }\n\n handleCreateAccount(e: MouseEvent) {\n e.preventDefault();\n this.nlImportAccount.emit(state.nlImport);\n }\n\n render() {\n const options = this.services.filter(s => s.canImport).map(s => ({ name: s.domain!, value: s.domain! }));\n\n return (\n <Fragment>\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-2xl\">{this.titleImport}</h1>\n <p class=\"nl-description font-light text-center text-sm pt-2 max-w-96 mx-auto\">{this.textImport}</p>\n </div>\n\n <div class=\"max-w-72 mx-auto mb-5\">\n <div class=\"mb-0.5\">\n <nl-select onSelectDomain={e => this.handleDomainSelect(e)} selected={0} options={options}></nl-select>\n </div>\n <p class=\"nl-title font-light text-sm mb-2\">Default provider is a fine choice to start with.</p>\n\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n\n <button-base disabled={state.isLoading} onClick={e => this.handleCreateAccount(e)} titleBtn=\"Start importing\">\n {state.isLoading ? (\n <span\n slot=\"icon-start\"\n class=\"animate-spin-loading inline-block w-4 h-4 border-[3px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full\"\n role=\"status\"\n aria-label=\"loading\"\n ></span>\n ) : (\n <svg slot=\"icon-start\" style={{ display: 'none' }} xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0 3.375 3.375 0 0 1 6.75 0ZM3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.318 12.318 0 0 1 9.374 21c-2.331 0-4.512-.645-6.374-1.766Z\"\n />\n </svg>\n )}\n </button-base>\n </div>\n </Fragment>\n );\n }\n}\n"],"version":3}
1
+ {"file":"nl-otp-migrate2.js","mappings":";;;;;AAAA,MAAM,eAAe,GAAG,mt3CAAmt3C,CAAC;AAC5u3C,2BAAe,eAAe;;MCQjB,YAAY;;;;;yBACc,gCAAgC;2BAC/C,kBAAkB;0BACnB,wGAAwG;wBACtF,EAAE;;IAIzC,kBAAkB,CAAC,KAA0B;QAC3C,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7D,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC;KACpB;IAED,mBAAmB,CAAC,CAAa;QAC/B,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;KAC3C;IAED,MAAM;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAO,EAAE,KAAK,EAAE,CAAC,CAAC,MAAO,EAAE,CAAC,CAAC,CAAC;QAEzG,QACE,EAAC,QAAQ,uDACP,4DAAK,KAAK,EAAC,qBAAqB,IAC9B,2DAAI,KAAK,EAAC,yCAAyC,IAAE,IAAI,CAAC,WAAW,CAAM,EAC3E,0DAAG,KAAK,EAAC,qEAAqE,IAAE,IAAI,CAAC,UAAU,CAAK,CAChG,EAEN,4DAAK,KAAK,EAAC,uBAAuB,IAChC,4DAAK,KAAK,EAAC,QAAQ,IACjB,kEAAW,cAAc,EAAE,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,GAAc,CACnG,EACN,0DAAG,KAAK,EAAC,kCAAkC,uDAAqD,EAEhG,4DAAK,KAAK,EAAC,2BAA2B,IACpC,0DAAG,KAAK,EAAC,0DAA0D,IAAE,KAAK,CAAC,KAAK,CAAK,CACjF,EAEN,oEAAa,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAC,iBAAiB,IAC1G,KAAK,CAAC,SAAS,IACd,YACE,IAAI,EAAC,YAAY,EACjB,KAAK,EAAC,2IAA2I,EACjJ,IAAI,EAAC,QAAQ,gBACF,SAAS,GACd,KAER,WAAK,IAAI,EAAC,YAAY,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,kBAAc,KAAK,EAAC,MAAM,EAAC,cAAc,IAC5J,8BACiB,OAAO,qBACN,OAAO,EACvB,CAAC,EAAC,yMAAyM,GAC3M,CACE,CACP,CACW,CACV,CACG,EACX;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/nl-otp-migrate/nl-otp-migrate.css?tag=nl-otp-migrate","src/components/nl-otp-migrate/nl-otp-migrate.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h, Fragment, Prop, Event, EventEmitter } from '@stencil/core';\nimport { state } from '@/store';\nimport { ConnectionString } from '@/types';\n\n@Component({\n tag: 'nl-otp-migrate',\n styleUrl: 'nl-otp-migrate.css',\n shadow: false,\n})\nexport class NlImportFlow {\n @Prop({ mutable: true }) titleInfo = 'Import keys to storage service';\n @Prop() titleImport = 'Choose a service';\n @Prop() textImport = 'You will be prompted to import keys to the chosen service, and this website will connect to your keys.';\n @Prop() services: ConnectionString[] = [];\n\n @Event() nlImportAccount: EventEmitter<ConnectionString>;\n\n handleDomainSelect(event: CustomEvent<string>) {\n const s = this.services.find(s => s.domain === event.detail);\n state.nlImport = s;\n }\n\n handleCreateAccount(e: MouseEvent) {\n e.preventDefault();\n this.nlImportAccount.emit(state.nlImport);\n }\n\n render() {\n const options = this.services.filter(s => s.canImport).map(s => ({ name: s.domain!, value: s.domain! }));\n\n return (\n <Fragment>\n <div class=\"p-4 overflow-y-auto\">\n <h1 class=\"nl-title font-bold text-center text-2xl\">{this.titleImport}</h1>\n <p class=\"nl-description font-light text-center text-sm pt-2 max-w-96 mx-auto\">{this.textImport}</p>\n </div>\n\n <div class=\"max-w-72 mx-auto mb-5\">\n <div class=\"mb-0.5\">\n <nl-select onSelectDomain={e => this.handleDomainSelect(e)} selected={0} options={options}></nl-select>\n </div>\n <p class=\"nl-title font-light text-sm mb-2\">Default provider is a fine choice to start with.</p>\n\n <div class=\"ps-4 pe-4 overflow-y-auto\">\n <p class=\"nl-error font-light text-center text-sm max-w-96 mx-auto\">{state.error}</p>\n </div>\n\n <button-base disabled={state.isLoading} onClick={e => this.handleCreateAccount(e)} titleBtn=\"Start importing\">\n {state.isLoading ? (\n <span\n slot=\"icon-start\"\n class=\"animate-spin-loading inline-block w-4 h-4 border-[3px] border-current border-t-transparent text-slate-900 dark:text-gray-300 rounded-full\"\n role=\"status\"\n aria-label=\"loading\"\n ></span>\n ) : (\n <svg slot=\"icon-start\" style={{ display: 'none' }} xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0 3.375 3.375 0 0 1 6.75 0ZM3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.318 12.318 0 0 1 9.374 21c-2.331 0-4.512-.645-6.374-1.766Z\"\n />\n </svg>\n )}\n </button-base>\n </div>\n </Fragment>\n );\n }\n}\n"],"version":3}
@@ -44,12 +44,12 @@ const NlPreviouslyLogged = /*@__PURE__*/ proxyCustomElement(class NlPreviouslyLo
44
44
  this.nlLoginRecentAccount.emit(el);
45
45
  }
46
46
  render() {
47
- return (h(Fragment, { key: '433be12e7eb9f18f10afa828a53920c85410940c' }, h("div", { key: '080f439a9910e8fe8217a914d04e2a2cc8ca97ad', class: "p-4 pt-0 overflow-y-auto" }, h("h1", { key: '332f960bc2b1727277dade6d5236f41f9a81116c', class: "nl-title font-bold text-center text-4xl" }, this.titlePage), h("p", { key: '2a1fb42c969f6266eb782d3f4f01a935ff88d779', class: "nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto" }, this.description)), h("div", { key: '679d3e53e352631f704c997c8ec206d122e4f8a6', class: "p-4" }, Boolean(this.accounts.length) && (h("div", { key: '4f2d266c86cc05c5030c432eeb8611f12ccfe52b', class: "max-w-96 mx-auto" }, h("p", { key: '94baf6a179142c0f3d6e0f15d2d98be35ee4cbcc', class: "nl-description font-medium text-sm pb-1.5" }, "Active profiles"), h("ul", { key: '5d7971661fbb7e6cc992df82f73639d9d1b5c69d', class: "p-2 rounded-lg border border-blue-200 flex flex-col w-full gap-0.5" }, this.accounts.map(el => {
47
+ return (h(Fragment, { key: '7d19fb2525b41f3d7a3f1ca8ee9bf1e645d3b054' }, h("div", { key: '4e60427b8ffd03c24295e1a61c0e8ebd50b15dca', class: "p-4 pt-0 overflow-y-auto" }, h("h1", { key: 'd310ad75566905d743d3cd282ad3a81467ce7280', class: "nl-title font-bold text-center text-4xl" }, this.titlePage), h("p", { key: '84b1b29db64c9c8c1aa7bf9365f7e4ddaf55a525', class: "nl-description font-light text-center text-lg pt-2 max-w-96 mx-auto" }, this.description)), h("div", { key: 'ec76c444dec3f22081c0643ad8af5b4a2d48de21', class: "p-4" }, Boolean(this.accounts.length) && (h("div", { key: 'efbd24706abc27062cee6cb595d43d6af8d45847', class: "max-w-96 mx-auto" }, h("p", { key: '07eca2ca983bae8d9434206f267981ddff7c1698', class: "nl-description font-medium text-sm pb-1.5" }, "Active profiles"), h("ul", { key: 'd983425f69b2b893fff5d02a37cf7a0cc5d9e193', class: "p-2 rounded-lg border border-blue-200 flex flex-col w-full gap-0.5" }, this.accounts.map(el => {
48
48
  const isShowImg = Boolean(el === null || el === void 0 ? void 0 : el.picture);
49
49
  const userName = el.name || el.nip05 || el.pubkey;
50
50
  const isShowUserName = Boolean(userName);
51
51
  return (h("li", { onClick: () => this.handleSwitch(el), class: "group hover:bg-gray-400 flex cursor-pointer gap-x-3.5 py-2 px-3 rounded-lg text-sm items-center justify-between" }, h("div", { class: "flex items-center gap-x-3.5 w-full" }, h("div", { class: "w-full max-w-7 h-7 flex relative" }, h("div", { class: "absolute top-[-2px] right-[-2px] bg-white border-2 border-white rounded-xl" }, h("div", { class: "active h-1.5 w-1.5 bg-green-500 rounded-xl" })), h("div", { class: "group-hover:border-blue-400 uppercase font-bold w-full h-full rounded-full border border-gray-400 flex justify-center items-center" }, isShowImg ? (h("img", { class: "w-full rounded-full", src: el.picture, alt: "Logo" })) : isShowUserName ? (userName[0]) : (h("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor", class: "w-full" }, h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", d: "M17.982 18.725A7.488 7.488 0 0 0 12 15.75a7.488 7.488 0 0 0-5.982 2.975m11.963 0a9 9 0 1 0-11.963 0m11.963 0A8.966 8.966 0 0 1 12 21a8.966 8.966 0 0 1-5.982-2.275M15 9.75a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z" }))))), h("div", { class: "overflow-hidden flex flex-col w-full" }, h("div", { class: "nl-title truncate overflow-hidden" }, userName), h("nl-login-status", { info: el })))));
52
- })))), Boolean(this.recents.length) && (h("div", { key: 'c66d7eda3b667f736052dc27709a343ddb74b54a', class: "max-w-96 mx-auto pt-5" }, h("p", { key: 'd31c7a93df4b7583cb00b4e0d55c1118adae0b32', class: "nl-description font-medium text-sm pb-1.5" }, "Recent profiles"), h("ul", { key: 'c03f0135c7e3dc4fe5db91aeff7cb8e1ccd436b6', class: "p-2 rounded-lg border border-gray-200 flex flex-col w-full gap-0.5" }, this.recents.map(el => {
52
+ })))), Boolean(this.recents.length) && (h("div", { key: 'bbce5576ab9a4f04981fc52c4162f4781ebd9959', class: "max-w-96 mx-auto pt-5" }, h("p", { key: 'b1b96f04ef8e10838e56be3dbfa2e7e010f31f5b', class: "nl-description font-medium text-sm pb-1.5" }, "Recent profiles"), h("ul", { key: '3927e59b6012996ecadd3bf3a45047d0a358ee7e', class: "p-2 rounded-lg border border-gray-200 flex flex-col w-full gap-0.5" }, this.recents.map(el => {
53
53
  const isShowImg = Boolean(el === null || el === void 0 ? void 0 : el.picture);
54
54
  const userName = el.name || el.nip05 || el.pubkey;
55
55
  const isShowUserName = Boolean(userName);
@@ -57,7 +57,7 @@ const NlPreviouslyLogged = /*@__PURE__*/ proxyCustomElement(class NlPreviouslyLo
57
57
  e.stopPropagation();
58
58
  this.handleRemoveRecent(el);
59
59
  }, xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor", class: "w-full max-w-6 h-6 text-red-500 hover:text-red-600 ml-auto" }, h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", d: "m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" }))));
60
- }))))), h("div", { key: 'bf85231e1b0cd2a3490564507ec9f41e9277a64f', class: "p-4 overflow-y-auto" }, h("p", { key: 'c88a893c3833de4ad97637abd10507b76921c0c5', class: "nl-footer font-light text-center text-sm max-w-96 mx-auto" }, "You can also", ' ', h("span", { key: '767425be179794ec16efe01c66f11d01954c70df', onClick: () => this.handleGoToWelcome(), class: "cursor-pointer pb-3 text-blue-500" }, "add another profile")))));
60
+ }))))), h("div", { key: '10f85d365f030596f483dc68a9ed40d562a03efd', class: "p-4 overflow-y-auto" }, h("p", { key: '017fd606a2ad0bcba249ba1938995c94ab7f2751', class: "nl-footer font-light text-center text-sm max-w-96 mx-auto" }, "You can also", ' ', h("span", { key: '27603a1a0908dbf4b07578935d7e37f09edc56e9', onClick: () => this.handleGoToWelcome(), class: "cursor-pointer pb-3 text-blue-500" }, "add another profile")))));
61
61
  }
62
62
  static get watchers() { return {
63
63
  "accounts": ["watchAccounts"],