taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

ModeNameSize
-rw-r--r--.dir-locals.el16L
-rw-r--r--.gitattributes2L
-rw-r--r--.gitignore40L
-rw-r--r--.gitlab-ci.yml39L
-rw-r--r--.gitmodules6L
-rw-r--r--.prettierignore18L
-rw-r--r--.prettierrc14L
-rw-r--r--.vscode/extensions.json13L
-rw-r--r--.vscode/settings.json55L
-rw-r--r--AUTHORS3L
-rw-r--r--CHANGELOG.md31L
-rw-r--r--COPYING674L
-rw-r--r--INSTALL2L
-rw-r--r--Makefile138L
-rw-r--r--README246L
-rw-r--r--RELEASE.md53L
-rwxr-xr-xbootstrap31L
-rwxr-xr-xbuild-system/archive.py156L
-rwxr-xr-xbuild-system/configure.sh67L
-rw-r--r--contrib/.gitignore1L
-rw-r--r--contrib/alloy/taler-sync.als52L
-rw-r--r--contrib/articles/spending.txt147L
-rw-r--r--contrib/articles/ui/.gitignore7L
-rw-r--r--contrib/articles/ui/btc.bib191L
-rw-r--r--contrib/articles/ui/figs/Makefile15L
-rw-r--r--contrib/articles/ui/figs/bank0a.png26902B
-rw-r--r--contrib/articles/ui/figs/bank1.png53014B
-rw-r--r--contrib/articles/ui/figs/bank1a.png56350B
-rw-r--r--contrib/articles/ui/figs/bank1b.png34100B
-rw-r--r--contrib/articles/ui/figs/bank2.png47896B
-rw-r--r--contrib/articles/ui/figs/bank2a.png48220B
-rw-r--r--contrib/articles/ui/figs/bank2b.png28513B
-rw-r--r--contrib/articles/ui/figs/bank3.png45646B
-rw-r--r--contrib/articles/ui/figs/bank3a.png59024B
-rw-r--r--contrib/articles/ui/figs/bank3b.png40907B
-rw-r--r--contrib/articles/ui/figs/bank4.png62697B
-rw-r--r--contrib/articles/ui/figs/bank4a.png67867B
-rw-r--r--contrib/articles/ui/figs/bank4b.png39949B
-rw-r--r--contrib/articles/ui/figs/bitcoin.pml37L
-rw-r--r--contrib/articles/ui/figs/bitcoin.svg1L
-rw-r--r--contrib/articles/ui/figs/cart.png116687B
-rw-r--r--contrib/articles/ui/figs/cc3ds.pml95L
-rw-r--r--contrib/articles/ui/figs/cc3ds.svg1L
-rw-r--r--contrib/articles/ui/figs/contract.pml31L
-rw-r--r--contrib/articles/ui/figs/fulfillment.png118355B
-rw-r--r--contrib/articles/ui/figs/pay.png48973B
-rw-r--r--contrib/articles/ui/figs/paypal.pml64L
-rw-r--r--contrib/articles/ui/figs/paypal.svg1L
-rw-r--r--contrib/articles/ui/figs/taler-contract.html6L
-rw-r--r--contrib/articles/ui/figs/taler-pay.pml47L
-rw-r--r--contrib/articles/ui/figs/taler-pay.svg1L
-rw-r--r--contrib/articles/ui/figs/taler-presence-js.html9L
-rw-r--r--contrib/articles/ui/figs/taler-withdraw.pml37L
-rw-r--r--contrib/articles/ui/figs/taler-withdraw.png36010B
-rw-r--r--contrib/articles/ui/figs/taler-withdraw.svg1L
-rw-r--r--contrib/articles/ui/hotcrp-review-28A.txt71L
-rw-r--r--contrib/articles/ui/llncs.cls1208L
-rw-r--r--contrib/articles/ui/rfc.bib86239L
-rw-r--r--contrib/articles/ui/sigalternate.cls1649L
-rw-r--r--contrib/articles/ui/soups.cls1612L
-rwxr-xr-xcontrib/articles/ui/splncs03.bst1519L
-rw-r--r--contrib/articles/ui/taler.bib226L
-rw-r--r--contrib/articles/ui/ui-cameraready.tex1640L
-rw-r--r--contrib/articles/ui/ui-outline.tex101L
-rw-r--r--contrib/articles/ui/ui.bib222L
-rw-r--r--contrib/articles/ui/ui.tex1642L
-rw-r--r--contrib/articles/ui/ui_short.tex268L
-rw-r--r--contrib/ast-grep-rules/button-without-type.yaml16L
-rw-r--r--contrib/ast-grep-rules/i18n-strings.yaml15L
-rwxr-xr-xcontrib/bump-taler-version.mjs41L
-rw-r--r--contrib/ci/Containerfile26L
-rwxr-xr-xcontrib/ci/ci.sh34L
-rw-r--r--contrib/ci/jobs/0-codespell/config.ini6L
-rw-r--r--contrib/ci/jobs/0-codespell/dictionary.txt20L
-rwxr-xr-xcontrib/ci/jobs/0-codespell/job.sh12L
-rwxr-xr-xcontrib/ci/jobs/1-build/build.sh6L
-rwxr-xr-xcontrib/ci/jobs/1-build/job.sh6L
-rwxr-xr-xcontrib/ci/jobs/2-docs/docs.sh8L
-rwxr-xr-xcontrib/ci/jobs/2-docs/job.sh6L
-rw-r--r--contrib/ci/jobs/3-wallet-cli-deb-package/config.ini6L
-rwxr-xr-xcontrib/ci/jobs/3-wallet-cli-deb-package/job.sh36L
-rwxr-xr-xcontrib/ci/jobs/3-wallet-cli-deb-package/version.sh17L
-rw-r--r--contrib/ci/jobs/4-taler-harness-deb-package/config.ini6L
-rwxr-xr-xcontrib/ci/jobs/4-taler-harness-deb-package/job.sh36L
-rwxr-xr-xcontrib/ci/jobs/4-taler-harness-deb-package/version.sh17L
-rw-r--r--contrib/ci/jobs/5-deploy-packages/config.ini6L
-rwxr-xr-xcontrib/ci/jobs/5-deploy-packages/job.sh14L
-rw-r--r--contrib/coinsim.ts144L
-rwxr-xr-xcontrib/count-deps20L
-rw-r--r--contrib/custom-protocol/README33L
-rwxr-xr-xcontrib/custom-protocol/taler-wallet-cli.desktop12L
-rwxr-xr-xcontrib/gana_update.sh55L
-rw-r--r--contrib/ide/README1L
-rw-r--r--contrib/ide/codeStyle.xml44L
-rw-r--r--contrib/integrationtest.conf10L
-rwxr-xr-xcontrib/next-dev-version.sh21L
-rw-r--r--contrib/package-android.json8L
-rw-r--r--contrib/selenium/README10L
-rwxr-xr-xcontrib/selenium/chrome_responsive.py47L
-rwxr-xr-xcontrib/selenium/withdraw_buy.py317L
-rw-r--r--contrib/sgconfig.yml2L
-rw-r--r--contrib/style.txt49L
m---------contrib/taler-assets @ ea4327b
-rw-r--r--contrib/wallet-docker/Dockerfile9L
-rw-r--r--contrib/wallet-docker/gitbuild.sh20L
-rw-r--r--contrib/wallet-integration/detect-wallet-callback.html29L
m---------contrib/wallet-testdata @ 7ca3d9b
-rw-r--r--doc/testrunner.md121L
-rw-r--r--eslint.config.mjs237L
-rw-r--r--flake.lock60L
-rw-r--r--flake.nix33L
-rw-r--r--package.json21L
-rw-r--r--packages/anastasis-cli/Makefile42L
-rw-r--r--packages/anastasis-cli/README.md4L
-rwxr-xr-xpackages/anastasis-cli/bin/anastasis-cli.mjs20L
-rwxr-xr-xpackages/anastasis-cli/build-node.mjs64L
-rw-r--r--packages/anastasis-cli/package.json46L
-rw-r--r--packages/anastasis-cli/src/import-meta-url.js2L
-rw-r--r--packages/anastasis-cli/src/index.ts87L
-rw-r--r--packages/anastasis-cli/tsconfig.json18L
-rw-r--r--packages/anastasis-core/README.md3L
-rwxr-xr-xpackages/anastasis-core/bin/anastasis-ts-reducer.js7L
-rw-r--r--packages/anastasis-core/package.json30L
-rw-r--r--packages/anastasis-core/src/anastasis-data.ts811L
-rw-r--r--packages/anastasis-core/src/challenge-feedback-types.ts159L
-rw-r--r--packages/anastasis-core/src/crypto.test.ts102L
-rw-r--r--packages/anastasis-core/src/crypto.ts361L
-rw-r--r--packages/anastasis-core/src/index.ts2006L
-rw-r--r--packages/anastasis-core/src/policy-suggestion.test.ts45L
-rw-r--r--packages/anastasis-core/src/policy-suggestion.ts243L
-rw-r--r--packages/anastasis-core/src/provider-types.ts199L
-rw-r--r--packages/anastasis-core/src/recovery-document-types.ts96L
-rw-r--r--packages/anastasis-core/src/reducer-types.ts541L
-rw-r--r--packages/anastasis-core/src/validators.ts43L
-rw-r--r--packages/anastasis-core/tsconfig.json22L
-rw-r--r--packages/anastasis-webui/.gitignore5L
-rw-r--r--packages/anastasis-webui/.prettierignore1L
-rw-r--r--packages/anastasis-webui/README.md3L
-rwxr-xr-xpackages/anastasis-webui/build.mjs28L
-rw-r--r--packages/anastasis-webui/copyleft-header.js15L
-rwxr-xr-xpackages/anastasis-webui/dev.mjs41L
-rw-r--r--packages/anastasis-webui/package.json39L
-rw-r--r--packages/anastasis-webui/src/assets/empty.png2785B
-rw-r--r--packages/anastasis-webui/src/assets/example/id1.jpg103558B
-rw-r--r--packages/anastasis-webui/src/assets/favicon.ico15086B
-rw-r--r--packages/anastasis-webui/src/assets/icons/android-chrome-192x192.png14058B
-rw-r--r--packages/anastasis-webui/src/assets/icons/android-chrome-512x512.png51484B
-rw-r--r--packages/anastasis-webui/src/assets/icons/apple-touch-icon.png12746B
-rw-r--r--packages/anastasis-webui/src/assets/icons/auth_method/email.svg1L
-rw-r--r--packages/anastasis-webui/src/assets/icons/auth_method/postal.svg1L
-rw-r--r--packages/anastasis-webui/src/assets/icons/auth_method/question.svg1L
-rw-r--r--packages/anastasis-webui/src/assets/icons/auth_method/sms.svg1L
-rw-r--r--packages/anastasis-webui/src/assets/icons/auth_method/video.svg1L
-rw-r--r--packages/anastasis-webui/src/assets/icons/favicon-16x16.png626B
-rw-r--r--packages/anastasis-webui/src/assets/icons/favicon-32x32.png1487B
-rw-r--r--packages/anastasis-webui/src/assets/icons/languageicon.svg48L
-rw-r--r--packages/anastasis-webui/src/assets/icons/mstile-150x150.png9050B
-rw-r--r--packages/anastasis-webui/src/assets/logo.jpeg39336B
-rw-r--r--packages/anastasis-webui/src/components/AsyncButton.tsx64L
-rw-r--r--packages/anastasis-webui/src/components/FlieButton.tsx71L
-rw-r--r--packages/anastasis-webui/src/components/InvalidState.tsx21L
-rw-r--r--packages/anastasis-webui/src/components/NoReducer.tsx21L
-rw-r--r--packages/anastasis-webui/src/components/Notifications.tsx74L
-rw-r--r--packages/anastasis-webui/src/components/QR.tsx48L
-rw-r--r--packages/anastasis-webui/src/components/app.tsx30L
-rw-r--r--packages/anastasis-webui/src/components/fields/DateInput.tsx106L
-rw-r--r--packages/anastasis-webui/src/components/fields/EmailInput.tsx72L
-rw-r--r--packages/anastasis-webui/src/components/fields/FileInput.tsx109L
-rw-r--r--packages/anastasis-webui/src/components/fields/NumberInput.tsx71L
-rw-r--r--packages/anastasis-webui/src/components/fields/TextInput.tsx83L
-rw-r--r--packages/anastasis-webui/src/components/menu/NavigationBar.tsx85L
-rw-r--r--packages/anastasis-webui/src/components/menu/SideBar.tsx329L
-rw-r--r--packages/anastasis-webui/src/components/menu/index.tsx70L
-rw-r--r--packages/anastasis-webui/src/components/picker/DatePicker.tsx364L
-rw-r--r--packages/anastasis-webui/src/components/picker/DurationPicker.stories.tsx46L
-rw-r--r--packages/anastasis-webui/src/components/picker/DurationPicker.tsx211L
-rw-r--r--packages/anastasis-webui/src/context/anastasis.ts40L
-rw-r--r--packages/anastasis-webui/src/context/translation.ts93L
-rw-r--r--packages/anastasis-webui/src/declaration.d.ts41L
-rw-r--r--packages/anastasis-webui/src/hooks/async.ts97L
-rw-r--r--packages/anastasis-webui/src/hooks/use-anastasis-reducer.ts434L
-rw-r--r--packages/anastasis-webui/src/hooks/useLang.ts30L
-rw-r--r--packages/anastasis-webui/src/hooks/useLocalStorage.ts49L
-rw-r--r--packages/anastasis-webui/src/i18n/poheader27L
-rw-r--r--packages/anastasis-webui/src/i18n/strings-prelude19L
-rw-r--r--packages/anastasis-webui/src/i18n/strings.ts44L
-rw-r--r--packages/anastasis-webui/src/i18n/taler-anastasis.pot26L
-rw-r--r--packages/anastasis-webui/src/index.html46L
-rw-r--r--packages/anastasis-webui/src/index.test.ts83L
-rw-r--r--packages/anastasis-webui/src/index.ts41L
-rw-r--r--packages/anastasis-webui/src/manifest.json21L
-rw-r--r--packages/anastasis-webui/src/pages/home/AddingProviderScreen/AddingProviderScreen.test.ts46L
-rw-r--r--packages/anastasis-webui/src/pages/home/AddingProviderScreen/index.ts131L
-rw-r--r--packages/anastasis-webui/src/pages/home/AddingProviderScreen/state.ts170L
-rw-r--r--packages/anastasis-webui/src/pages/home/AddingProviderScreen/stories.tsx93L
-rw-r--r--packages/anastasis-webui/src/pages/home/AddingProviderScreen/views.tsx315L
-rw-r--r--packages/anastasis-webui/src/pages/home/AttributeEntryScreen.stories.tsx161L
-rw-r--r--packages/anastasis-webui/src/pages/home/AttributeEntryScreen.tsx272L
-rw-r--r--packages/anastasis-webui/src/pages/home/AuthenticationEditorScreen.stories.tsx108L
-rw-r--r--packages/anastasis-webui/src/pages/home/AuthenticationEditorScreen.tsx260L
-rw-r--r--packages/anastasis-webui/src/pages/home/BackupFinishedScreen.stories.tsx73L
-rw-r--r--packages/anastasis-webui/src/pages/home/BackupFinishedScreen.tsx81L
-rw-r--r--packages/anastasis-webui/src/pages/home/ChallengeOverviewScreen.stories.tsx272L
-rw-r--r--packages/anastasis-webui/src/pages/home/ChallengeOverviewScreen.tsx296L
-rw-r--r--packages/anastasis-webui/src/pages/home/ChallengePayingScreen.stories.tsx42L
-rw-r--r--packages/anastasis-webui/src/pages/home/ChallengePayingScreen.tsx45L
-rw-r--r--packages/anastasis-webui/src/pages/home/ConfirmModal.tsx97L
-rw-r--r--packages/anastasis-webui/src/pages/home/ContinentSelectionScreen.stories.tsx59L
-rw-r--r--packages/anastasis-webui/src/pages/home/ContinentSelectionScreen.tsx164L
-rw-r--r--packages/anastasis-webui/src/pages/home/EditPoliciesScreen.stories.tsx141L
-rw-r--r--packages/anastasis-webui/src/pages/home/EditPoliciesScreen.tsx178L
-rw-r--r--packages/anastasis-webui/src/pages/home/PoliciesPayingScreen.stories.tsx56L
-rw-r--r--packages/anastasis-webui/src/pages/home/PoliciesPayingScreen.tsx50L
-rw-r--r--packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.stories.tsx57L
-rw-r--r--packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx146L
-rw-r--r--packages/anastasis-webui/src/pages/home/ReviewPoliciesScreen.stories.tsx270L
-rw-r--r--packages/anastasis-webui/src/pages/home/ReviewPoliciesScreen.tsx165L
-rw-r--r--packages/anastasis-webui/src/pages/home/SecretEditorScreen.stories.tsx50L
-rw-r--r--packages/anastasis-webui/src/pages/home/SecretEditorScreen.tsx139L
-rw-r--r--packages/anastasis-webui/src/pages/home/SecretSelectionScreen.stories.tsx83L
-rw-r--r--packages/anastasis-webui/src/pages/home/SecretSelectionScreen.tsx294L
-rw-r--r--packages/anastasis-webui/src/pages/home/SolveScreen.stories.tsx72L
-rw-r--r--packages/anastasis-webui/src/pages/home/SolveScreen.tsx255L
-rw-r--r--packages/anastasis-webui/src/pages/home/StartScreen.stories.tsx42L
-rw-r--r--packages/anastasis-webui/src/pages/home/StartScreen.tsx71L
-rw-r--r--packages/anastasis-webui/src/pages/home/TruthsPayingScreen.stories.tsx47L
-rw-r--r--packages/anastasis-webui/src/pages/home/TruthsPayingScreen.tsx45L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodEmailSetup.stories.tsx82L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodEmailSetup.tsx113L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodEmailSolve.stories.tsx92L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodEmailSolve.tsx199L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodIbanSetup.stories.tsx81L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodIbanSetup.tsx129L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodIbanSolve.stories.tsx60L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodIbanSolve.tsx108L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodPostSetup.stories.tsx82L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodPostSetup.tsx161L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodPostSolve.stories.tsx60L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodPostSolve.tsx151L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodQuestionSetup.stories.tsx84L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodQuestionSetup.tsx127L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodQuestionSolve.stories.tsx239L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodQuestionSolve.tsx128L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodSmsSetup.stories.tsx82L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodSmsSetup.tsx127L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodSmsSolve.stories.tsx61L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodSmsSolve.tsx195L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodTotpSetup.stories.tsx80L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodTotpSetup.tsx141L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodTotpSolve.stories.tsx60L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/AuthMethodTotpSolve.tsx125L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/helpers.ts27L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/index.tsx109L
-rw-r--r--packages/anastasis-webui/src/pages/home/authMethod/totp.ts79L
-rw-r--r--packages/anastasis-webui/src/pages/home/index.stories.tsx52L
-rw-r--r--packages/anastasis-webui/src/pages/home/index.tsx362L
-rw-r--r--packages/anastasis-webui/src/scss/DurationPicker.scss70L
-rw-r--r--packages/anastasis-webui/src/scss/_aside.scss128L
-rw-r--r--packages/anastasis-webui/src/scss/_card.scss69L
-rw-r--r--packages/anastasis-webui/src/scss/_custom-calendar.scss283L
-rw-r--r--packages/anastasis-webui/src/scss/_footer.scss35L
-rw-r--r--packages/anastasis-webui/src/scss/_form.scss71L
-rw-r--r--packages/anastasis-webui/src/scss/_hero-bar.scss55L
-rw-r--r--packages/anastasis-webui/src/scss/_loading.scss51L
-rw-r--r--packages/anastasis-webui/src/scss/_main-section.scss24L
-rw-r--r--packages/anastasis-webui/src/scss/_misc.scss50L
-rw-r--r--packages/anastasis-webui/src/scss/_mixins.scss34L
-rw-r--r--packages/anastasis-webui/src/scss/_modal.scss35L
-rw-r--r--packages/anastasis-webui/src/scss/_nav-bar.scss144L
-rw-r--r--packages/anastasis-webui/src/scss/_table.scss179L
-rw-r--r--packages/anastasis-webui/src/scss/_theme-default.scss136L
-rw-r--r--packages/anastasis-webui/src/scss/_tiles.scss24L
-rw-r--r--packages/anastasis-webui/src/scss/_title-bar.scss50L
-rw-r--r--packages/anastasis-webui/src/scss/fonts/XRXV3I6Li01BKofINeaE.ttf43752B
-rw-r--r--packages/anastasis-webui/src/scss/fonts/materialdesignicons-webfont-4.9.95.eot844600B
-rw-r--r--packages/anastasis-webui/src/scss/fonts/materialdesignicons-webfont-4.9.95.ttf844380B
-rw-r--r--packages/anastasis-webui/src/scss/fonts/materialdesignicons-webfont-4.9.95.woff404384B
-rw-r--r--packages/anastasis-webui/src/scss/fonts/materialdesignicons-webfont-4.9.95.woff2283040B
-rw-r--r--packages/anastasis-webui/src/scss/fonts/nunito.css22L
-rw-r--r--packages/anastasis-webui/src/scss/icons/materialdesignicons-4.9.95.min.css15109L
-rw-r--r--packages/anastasis-webui/src/scss/libs/_all.scss29L
-rw-r--r--packages/anastasis-webui/src/scss/main.scss234L
-rw-r--r--packages/anastasis-webui/src/stories.tsx42L
-rw-r--r--packages/anastasis-webui/src/utils/index.tsx277L
-rwxr-xr-xpackages/anastasis-webui/test.mjs30L
-rw-r--r--packages/anastasis-webui/tsconfig.json25L
-rw-r--r--packages/challenger-webui/.gitignore4L
-rw-r--r--packages/challenger-webui/.prettierignore1L
-rw-r--r--packages/challenger-webui/Makefile36L
-rw-r--r--packages/challenger-webui/README.md4L
-rwxr-xr-xpackages/challenger-webui/build.mjs34L
-rw-r--r--packages/challenger-webui/copyleft-header.js15L
-rw-r--r--packages/challenger-webui/debian/control15L
-rw-r--r--packages/challenger-webui/debian/copyright699L
-rwxr-xr-xpackages/challenger-webui/debian/rules19L
-rwxr-xr-xpackages/challenger-webui/dev.mjs47L
-rw-r--r--packages/challenger-webui/package.json41L
-rw-r--r--packages/challenger-webui/postcss.config.js21L
-rw-r--r--packages/challenger-webui/src/Routing.tsx271L
-rw-r--r--packages/challenger-webui/src/app.tsx274L
-rw-r--r--packages/challenger-webui/src/assets/home.svg3L
-rw-r--r--packages/challenger-webui/src/assets/logo-2021.svg9L
-rw-r--r--packages/challenger-webui/src/assets/people.svg3L
-rw-r--r--packages/challenger-webui/src/challenger-flow.test.ts357L
-rw-r--r--packages/challenger-webui/src/components/CheckChallengeIsUpToDate.tsx206L
-rw-r--r--packages/challenger-webui/src/components/VerificationUi.tsx351L
-rw-r--r--packages/challenger-webui/src/context/settings.ts41L
-rw-r--r--packages/challenger-webui/src/declaration.d.ts35L
-rw-r--r--packages/challenger-webui/src/hooks/challenge.ts71L
-rw-r--r--packages/challenger-webui/src/hooks/session.ts136L
-rw-r--r--packages/challenger-webui/src/i18n/challenger-ui.pot1102L
-rw-r--r--packages/challenger-webui/src/i18n/de.po1485L
-rw-r--r--packages/challenger-webui/src/i18n/es.po1460L
-rw-r--r--packages/challenger-webui/src/i18n/fr.po1183L
-rw-r--r--packages/challenger-webui/src/i18n/it.po1172L
-rw-r--r--packages/challenger-webui/src/i18n/poheader26L
-rw-r--r--packages/challenger-webui/src/i18n/strings.ts1536L
-rw-r--r--packages/challenger-webui/src/index.html45L
-rw-r--r--packages/challenger-webui/src/index.tsx27L
-rw-r--r--packages/challenger-webui/src/main.js2L
-rw-r--r--packages/challenger-webui/src/pages/AnswerChallenge.tsx723L
-rw-r--r--packages/challenger-webui/src/pages/AskChallenge.tsx990L
-rw-r--r--packages/challenger-webui/src/pages/CallengeCompleted.tsx190L
-rw-r--r--packages/challenger-webui/src/pages/Frame.tsx68L
-rw-r--r--packages/challenger-webui/src/pages/Setup.tsx209L
-rw-r--r--packages/challenger-webui/src/scss/main.css88L
-rw-r--r--packages/challenger-webui/src/settings.json3L
-rw-r--r--packages/challenger-webui/src/settings.ts84L
-rw-r--r--packages/challenger-webui/tailwind.config.js82L
-rwxr-xr-xpackages/challenger-webui/test.mjs31L
-rw-r--r--packages/challenger-webui/tsconfig.json23L
-rw-r--r--packages/idb-bridge/.gitignore2L
-rw-r--r--packages/idb-bridge/.npmignore4L
-rw-r--r--packages/idb-bridge/README.md18L
-rw-r--r--packages/idb-bridge/package.json42L
-rw-r--r--packages/idb-bridge/src/MemoryBackend.ts26L
-rw-r--r--packages/idb-bridge/src/SqliteBackend.test.ts170L
-rw-r--r--packages/idb-bridge/src/SqliteBackend.ts3034L
-rw-r--r--packages/idb-bridge/src/backend-common.ts22L
-rw-r--r--packages/idb-bridge/src/backend-interface.ts269L
-rw-r--r--packages/idb-bridge/src/backends.test.ts719L
-rw-r--r--packages/idb-bridge/src/bench.ts109L
-rw-r--r--packages/idb-bridge/src/bridge-idb.ts3151L
-rw-r--r--packages/idb-bridge/src/browser-sqlite3-impl.test.ts98L
-rw-r--r--packages/idb-bridge/src/browser-sqlite3-impl.ts319L
-rw-r--r--packages/idb-bridge/src/error-reporting.test.ts77L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/README275L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/abort-in-initial-upgradeneeded.test.ts38L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/close-in-upgradeneeded.test.ts47L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/cursor-overloads.test.ts152L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/event-dispatch-active-flag.test.ts207L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbcursor-advance-index.test.ts319L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbcursor-continue-index.test.ts429L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbcursor-continue-objectstore.test.ts267L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-exception-order.test.ts91L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-index.test.ts217L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-objectstore.test.ts194L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbcursor-reused.test.ts94L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbcursor-update-index.test.ts298L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbfactory-cmp.test.ts63L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbfactory-open.test.ts218L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbindex-get.test.ts228L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbindex-openCursor.test.ts88L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add-put-exception-order.test.ts107L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add.test.ts474L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-get.test.ts178L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-put.test.ts486L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-rename-store.test.ts490L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/idbtransaction-oncomplete.test.ts53L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/keypath.test.ts194L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/request-bubble-and-capture.test.ts84L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/transaction-requestqueue.test.ts106L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/value.test.ts46L
-rw-r--r--packages/idb-bridge/src/idb-wpt-ported/wptsupport.ts557L
-rw-r--r--packages/idb-bridge/src/idbcursor-update.test.ts79L
-rw-r--r--packages/idb-bridge/src/idbpromutil.ts26L
-rw-r--r--packages/idb-bridge/src/idbtypes.ts844L
-rw-r--r--packages/idb-bridge/src/index.ts108L
-rw-r--r--packages/idb-bridge/src/node-helper-sqlite3-impl.test.ts114L
-rw-r--r--packages/idb-bridge/src/node-helper-sqlite3-impl.ts651L
-rw-r--r--packages/idb-bridge/src/sqlite-error-recovery.test.ts161L
-rw-r--r--packages/idb-bridge/src/sqlite3-interface.ts71L
-rw-r--r--packages/idb-bridge/src/testingdb.ts49L
-rw-r--r--packages/idb-bridge/src/util/FakeEvent.ts103L
-rw-r--r--packages/idb-bridge/src/util/FakeEventTarget.ts203L
-rw-r--r--packages/idb-bridge/src/util/cmp.ts106L
-rw-r--r--packages/idb-bridge/src/util/enforceRange.ts34L
-rw-r--r--packages/idb-bridge/src/util/errors.ts129L
-rw-r--r--packages/idb-bridge/src/util/extractKey.ts74L
-rw-r--r--packages/idb-bridge/src/util/fakeDOMStringList.ts42L
-rw-r--r--packages/idb-bridge/src/util/getIndexKeys.test.ts72L
-rw-r--r--packages/idb-bridge/src/util/getIndexKeys.ts74L
-rw-r--r--packages/idb-bridge/src/util/key-storage.test.ts40L
-rw-r--r--packages/idb-bridge/src/util/key-storage.ts363L
-rw-r--r--packages/idb-bridge/src/util/makeStoreKeyValue.test.ts95L
-rw-r--r--packages/idb-bridge/src/util/makeStoreKeyValue.ts186L
-rw-r--r--packages/idb-bridge/src/util/normalizeKeyPath.ts41L
-rw-r--r--packages/idb-bridge/src/util/openPromise.ts36L
-rw-r--r--packages/idb-bridge/src/util/queueTask.ts39L
-rw-r--r--packages/idb-bridge/src/util/structuredClone.test.ts132L
-rw-r--r--packages/idb-bridge/src/util/structuredClone.ts449L
-rw-r--r--packages/idb-bridge/src/util/validateKeyPath.ts85L
-rw-r--r--packages/idb-bridge/src/util/valueToKey.ts82L
-rwxr-xr-xpackages/idb-bridge/taler-helper-sqlite3350L
-rw-r--r--packages/idb-bridge/tsconfig.json16L
-rw-r--r--packages/libeufin-bank-webui/.gitignore4L
-rw-r--r--packages/libeufin-bank-webui/.prettierignore1L
-rw-r--r--packages/libeufin-bank-webui/Makefile35L
-rw-r--r--packages/libeufin-bank-webui/README.md29L
-rwxr-xr-xpackages/libeufin-bank-webui/build.mjs29L
-rw-r--r--packages/libeufin-bank-webui/copyleft-header.js15L
-rw-r--r--packages/libeufin-bank-webui/coverage-report.mjs146L
-rw-r--r--packages/libeufin-bank-webui/debian/control15L
-rw-r--r--packages/libeufin-bank-webui/debian/copyright26L
-rwxr-xr-xpackages/libeufin-bank-webui/debian/rules19L
-rwxr-xr-xpackages/libeufin-bank-webui/dev.mjs42L
-rw-r--r--packages/libeufin-bank-webui/package.json43L
-rw-r--r--packages/libeufin-bank-webui/postcss.config.js21L
-rw-r--r--packages/libeufin-bank-webui/src/Routing.tsx659L
-rw-r--r--packages/libeufin-bank-webui/src/app.tsx326L
-rw-r--r--packages/libeufin-bank-webui/src/assets/example/id1.jpg103558B
-rw-r--r--packages/libeufin-bank-webui/src/assets/icons/android-chrome-192x192.png14058B
-rw-r--r--packages/libeufin-bank-webui/src/assets/icons/android-chrome-512x512.png51484B
-rw-r--r--packages/libeufin-bank-webui/src/assets/icons/apple-touch-icon.png12746B
-rw-r--r--packages/libeufin-bank-webui/src/assets/icons/favicon-16x16.png626B
-rw-r--r--packages/libeufin-bank-webui/src/assets/icons/favicon-32x32.png1487B
-rw-r--r--packages/libeufin-bank-webui/src/assets/icons/languageicon.svg48L
-rw-r--r--packages/libeufin-bank-webui/src/assets/icons/mstile-150x150.png9050B
-rw-r--r--packages/libeufin-bank-webui/src/assets/logo.jpeg39336B
-rw-r--r--packages/libeufin-bank-webui/src/assets/taler-logo-light.svg1L
-rw-r--r--packages/libeufin-bank-webui/src/components/AbortWithdrawalDialog.tsx125L
-rw-r--r--packages/libeufin-bank-webui/src/components/AdminNavigation.stories.tsx35L
-rw-r--r--packages/libeufin-bank-webui/src/components/AdminNavigation.tsx97L
-rw-r--r--packages/libeufin-bank-webui/src/components/Cashouts/index.ts83L
-rw-r--r--packages/libeufin-bank-webui/src/components/Cashouts/state.ts57L
-rw-r--r--packages/libeufin-bank-webui/src/components/Cashouts/stories.tsx34L
-rw-r--r--packages/libeufin-bank-webui/src/components/Cashouts/views.tsx304L
-rw-r--r--packages/libeufin-bank-webui/src/components/DemoBanner.stories.tsx28L
-rw-r--r--packages/libeufin-bank-webui/src/components/DemoBanner.test.ts52L
-rw-r--r--packages/libeufin-bank-webui/src/components/DemoBanner.tsx129L
-rw-r--r--packages/libeufin-bank-webui/src/components/OperationError.tsx36L
-rw-r--r--packages/libeufin-bank-webui/src/components/RetryableError.stories.tsx26L
-rw-r--r--packages/libeufin-bank-webui/src/components/RetryableError.tsx39L
-rw-r--r--packages/libeufin-bank-webui/src/components/Transactions/index.ts101L
-rw-r--r--packages/libeufin-bank-webui/src/components/Transactions/state.ts108L
-rw-r--r--packages/libeufin-bank-webui/src/components/Transactions/stories.tsx71L
-rw-r--r--packages/libeufin-bank-webui/src/components/Transactions/views.tsx271L
-rw-r--r--packages/libeufin-bank-webui/src/components/index.examples.ts21L
-rw-r--r--packages/libeufin-bank-webui/src/context/challenge.ts130L
-rw-r--r--packages/libeufin-bank-webui/src/context/settings.ts44L
-rw-r--r--packages/libeufin-bank-webui/src/declaration.d.ts35L
-rw-r--r--packages/libeufin-bank-webui/src/developer-settings.test.ts95L
-rw-r--r--packages/libeufin-bank-webui/src/developer-settings.ts96L
-rw-r--r--packages/libeufin-bank-webui/src/hooks/account.ts276L
-rw-r--r--packages/libeufin-bank-webui/src/hooks/bank-state.test.ts60L
-rw-r--r--packages/libeufin-bank-webui/src/hooks/bank-state.ts239L
-rw-r--r--packages/libeufin-bank-webui/src/hooks/form.ts123L
-rw-r--r--packages/libeufin-bank-webui/src/hooks/preferences.test.ts50L
-rw-r--r--packages/libeufin-bank-webui/src/hooks/preferences.ts87L
-rw-r--r--packages/libeufin-bank-webui/src/hooks/regional.ts735L
-rw-r--r--packages/libeufin-bank-webui/src/hooks/session.ts305L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/bank.pot3238L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/ca.po3987L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/de.po4397L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/es.po4077L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/fr.po4270L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/he.po3853L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/it.po4156L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/poheader26L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/ru.po4295L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/strings.ts9867L
-rw-r--r--packages/libeufin-bank-webui/src/i18n/uk.po4340L
-rw-r--r--packages/libeufin-bank-webui/src/index.html45L
-rw-r--r--packages/libeufin-bank-webui/src/index.tsx36L
-rw-r--r--packages/libeufin-bank-webui/src/pages/AccountPage/AccountPage.test.ts74L
-rw-r--r--packages/libeufin-bank-webui/src/pages/AccountPage/index.ts100L
-rw-r--r--packages/libeufin-bank-webui/src/pages/AccountPage/state.ts101L
-rw-r--r--packages/libeufin-bank-webui/src/pages/AccountPage/stories.tsx47L
-rw-r--r--packages/libeufin-bank-webui/src/pages/AccountPage/views.tsx210L
-rw-r--r--packages/libeufin-bank-webui/src/pages/ActiveWithdrawal.tsx322L
-rw-r--r--packages/libeufin-bank-webui/src/pages/AuthForm.tsx164L
-rw-r--r--packages/libeufin-bank-webui/src/pages/Authentication.stories.tsx56L
-rw-r--r--packages/libeufin-bank-webui/src/pages/BankFrame.stories.tsx45L
-rw-r--r--packages/libeufin-bank-webui/src/pages/BankFrame.tsx576L
-rw-r--r--packages/libeufin-bank-webui/src/pages/ConversionRateClassDetails.tsx1337L
-rw-r--r--packages/libeufin-bank-webui/src/pages/DeveloperSettings.stories.tsx41L
-rw-r--r--packages/libeufin-bank-webui/src/pages/DeveloperSettings.tsx271L
-rw-r--r--packages/libeufin-bank-webui/src/pages/LoginForm.tsx445L
-rw-r--r--packages/libeufin-bank-webui/src/pages/NewConversionRateClass.tsx126L
-rw-r--r--packages/libeufin-bank-webui/src/pages/OperationState/OperationState.test.ts332L
-rw-r--r--packages/libeufin-bank-webui/src/pages/OperationState/index.ts171L
-rw-r--r--packages/libeufin-bank-webui/src/pages/OperationState/state.ts343L
-rw-r--r--packages/libeufin-bank-webui/src/pages/OperationState/stories.tsx309L
-rw-r--r--packages/libeufin-bank-webui/src/pages/OperationState/views.tsx1120L
-rw-r--r--packages/libeufin-bank-webui/src/pages/PaymentOptions.stories.tsx37L
-rw-r--r--packages/libeufin-bank-webui/src/pages/PaymentOptions.tsx175L
-rw-r--r--packages/libeufin-bank-webui/src/pages/PaytoWireTransferForm.stories.tsx60L
-rw-r--r--packages/libeufin-bank-webui/src/pages/PaytoWireTransferForm.tsx873L
-rw-r--r--packages/libeufin-bank-webui/src/pages/ProfileNavigation.stories.tsx54L
-rw-r--r--packages/libeufin-bank-webui/src/pages/ProfileNavigation.tsx95L
-rw-r--r--packages/libeufin-bank-webui/src/pages/PublicHistoriesPage.tsx141L
-rw-r--r--packages/libeufin-bank-webui/src/pages/RegistrationPage.tsx400L
-rw-r--r--packages/libeufin-bank-webui/src/pages/SolveMFA.tsx634L
-rw-r--r--packages/libeufin-bank-webui/src/pages/WalletWithdrawForm.tsx501L
-rw-r--r--packages/libeufin-bank-webui/src/pages/WalletWithdrawal.stories.tsx73L
-rw-r--r--packages/libeufin-bank-webui/src/pages/WalletWithdrawal.tsx94L
-rw-r--r--packages/libeufin-bank-webui/src/pages/WireTransfer.tsx123L
-rw-r--r--packages/libeufin-bank-webui/src/pages/WithdrawalOperationPage.tsx60L
-rw-r--r--packages/libeufin-bank-webui/src/pages/WithdrawalProgress.tsx78L
-rw-r--r--packages/libeufin-bank-webui/src/pages/account/CashoutListForAccount.tsx63L
-rw-r--r--packages/libeufin-bank-webui/src/pages/account/MerchantIntegration.stories.tsx50L
-rw-r--r--packages/libeufin-bank-webui/src/pages/account/MerchantIntegration.tsx220L
-rw-r--r--packages/libeufin-bank-webui/src/pages/account/ReadOnlyDetails.tsx64L
-rw-r--r--packages/libeufin-bank-webui/src/pages/account/ShowAccountDetails.tsx326L
-rw-r--r--packages/libeufin-bank-webui/src/pages/account/UpdateAccountPassword.tsx317L
-rw-r--r--packages/libeufin-bank-webui/src/pages/admin/AccountForm.stories.tsx76L
-rw-r--r--packages/libeufin-bank-webui/src/pages/admin/AccountForm.tsx882L
-rw-r--r--packages/libeufin-bank-webui/src/pages/admin/AccountList.tsx303L
-rw-r--r--packages/libeufin-bank-webui/src/pages/admin/AdminAccountSummary.tsx75L
-rw-r--r--packages/libeufin-bank-webui/src/pages/admin/AdminHome.tsx794L
-rw-r--r--packages/libeufin-bank-webui/src/pages/admin/ConversionClassList.tsx342L
-rw-r--r--packages/libeufin-bank-webui/src/pages/admin/ConversionRateClassForm.tsx619L
-rw-r--r--packages/libeufin-bank-webui/src/pages/admin/CreateNewAccount.tsx184L
-rw-r--r--packages/libeufin-bank-webui/src/pages/admin/DownloadStats.tsx644L
-rw-r--r--packages/libeufin-bank-webui/src/pages/admin/RemoveAccount.tsx283L
-rw-r--r--packages/libeufin-bank-webui/src/pages/auth-validation.test.ts63L
-rw-r--r--packages/libeufin-bank-webui/src/pages/auth-validation.ts43L
-rw-r--r--packages/libeufin-bank-webui/src/pages/index.stories.tsx27L
-rw-r--r--packages/libeufin-bank-webui/src/pages/regional/CashoutCreatePage.tsx67L
-rw-r--r--packages/libeufin-bank-webui/src/pages/regional/ConversionConfig.tsx1276L
-rw-r--r--packages/libeufin-bank-webui/src/pages/regional/CreateCashout.tsx925L
-rw-r--r--packages/libeufin-bank-webui/src/pages/regional/ShowCashoutDetails.tsx206L
-rw-r--r--packages/libeufin-bank-webui/src/pages/rnd.ts18L
-rw-r--r--packages/libeufin-bank-webui/src/pages/withdrawal-amount.ts44L
-rw-r--r--packages/libeufin-bank-webui/src/scss/main.css3L
-rw-r--r--packages/libeufin-bank-webui/src/settings.json14L
-rw-r--r--packages/libeufin-bank-webui/src/settings.test.ts40L
-rw-r--r--packages/libeufin-bank-webui/src/settings.ts122L
-rw-r--r--packages/libeufin-bank-webui/src/stories-context.tsx179L
-rw-r--r--packages/libeufin-bank-webui/src/stories.test.ts57L
-rw-r--r--packages/libeufin-bank-webui/src/stories.tsx44L
-rw-r--r--packages/libeufin-bank-webui/src/type-override.d.ts32L
-rw-r--r--packages/libeufin-bank-webui/src/utils.test.ts107L
-rw-r--r--packages/libeufin-bank-webui/src/utils.ts125L
-rw-r--r--packages/libeufin-bank-webui/tailwind.config.js290L
-rwxr-xr-xpackages/libeufin-bank-webui/test.mjs31L
-rw-r--r--packages/libeufin-bank-webui/tsconfig.json22L
-rw-r--r--packages/pogen/.gitignore2L
-rw-r--r--packages/pogen/README.md160L
-rwxr-xr-xpackages/pogen/bin/pogen2L
-rw-r--r--packages/pogen/example/proj1/package.json14L
-rw-r--r--packages/pogen/example/proj1/src/i18n/test.pot130L
-rw-r--r--packages/pogen/example/proj1/src/pogen.test.ts67L
-rw-r--r--packages/pogen/example/proj1/src/sample.ts0B
-rw-r--r--packages/pogen/example/proj1/src/test2.tsx17L
-rw-r--r--packages/pogen/example/proj1/tsconfig.json27L
-rw-r--r--packages/pogen/package.json28L
-rw-r--r--packages/pogen/src/check.ts190L
-rw-r--r--packages/pogen/src/dumpTree.ts51L
-rw-r--r--packages/pogen/src/po2ts.test.ts254L
-rw-r--r--packages/pogen/src/po2ts.ts254L
-rw-r--r--packages/pogen/src/pogen.ts75L
-rw-r--r--packages/pogen/src/potextract.test.ts573L
-rw-r--r--packages/pogen/src/potextract.ts1071L
-rw-r--r--packages/pogen/tsconfig.json17L
-rw-r--r--packages/pogen/yarn.lock13L
-rwxr-xr-xpackages/qa-tooling/bin/c8.mjs11L
-rwxr-xr-xpackages/qa-tooling/bin/eslint.mjs13L
-rw-r--r--packages/qa-tooling/bin/test-all.mjs243L
-rw-r--r--packages/qa-tooling/bin/test-reporter.mjs118L
-rw-r--r--packages/qa-tooling/package.json30L
-rw-r--r--packages/qa-tooling/pnpm-lock.yaml2831L
-rw-r--r--packages/qa-tooling/test/test-all.test.mjs134L
-rw-r--r--packages/qa-tooling/test/test-output-policy.test.mjs71L
-rw-r--r--packages/taler-auditor-webui/.gitignore6L
-rw-r--r--packages/taler-auditor-webui/.prettierignore2L
-rw-r--r--packages/taler-auditor-webui/DESIGN.md195L
-rw-r--r--packages/taler-auditor-webui/Makefile36L
-rw-r--r--packages/taler-auditor-webui/README.md64L
-rwxr-xr-xpackages/taler-auditor-webui/build.mjs27L
-rw-r--r--packages/taler-auditor-webui/copyleft-header.js15L
-rw-r--r--packages/taler-auditor-webui/debian/control15L
-rw-r--r--packages/taler-auditor-webui/debian/copyright699L
-rwxr-xr-xpackages/taler-auditor-webui/debian/rules19L
-rwxr-xr-xpackages/taler-auditor-webui/dev.mjs35L
-rw-r--r--packages/taler-auditor-webui/esbuild.config.mjs68L
-rw-r--r--packages/taler-auditor-webui/package.json38L
-rw-r--r--packages/taler-auditor-webui/remove-link-stylesheet.sh8L
-rw-r--r--packages/taler-auditor-webui/src/Application.tsx176L
-rw-r--r--packages/taler-auditor-webui/src/ApplicationReadyRoutes.tsx40L
-rw-r--r--packages/taler-auditor-webui/src/InstanceRoutes.tsx130L
-rw-r--r--packages/taler-auditor-webui/src/assets/empty.png2785B
-rw-r--r--packages/taler-auditor-webui/src/assets/icons/android-chrome-192x192.png14058B
-rw-r--r--packages/taler-auditor-webui/src/assets/icons/android-chrome-512x512.png51484B
-rw-r--r--packages/taler-auditor-webui/src/assets/icons/apple-touch-icon.png12746B
-rw-r--r--packages/taler-auditor-webui/src/assets/icons/favicon-16x16.png626B
-rw-r--r--packages/taler-auditor-webui/src/assets/icons/favicon-32x32.png1487B
-rw-r--r--packages/taler-auditor-webui/src/assets/icons/languageicon.svg48L
-rw-r--r--packages/taler-auditor-webui/src/assets/icons/mstile-150x150.png9050B
-rw-r--r--packages/taler-auditor-webui/src/assets/logo-2021.svg9L
-rw-r--r--packages/taler-auditor-webui/src/assets/logo.jpeg39336B
-rw-r--r--packages/taler-auditor-webui/src/components/DashboardTableRow.tsx57L
-rw-r--r--packages/taler-auditor-webui/src/components/TalerLogo.tsx46L
-rw-r--r--packages/taler-auditor-webui/src/components/exception/loading.tsx40L
-rw-r--r--packages/taler-auditor-webui/src/components/menu/LangSelector.tsx35L
-rw-r--r--packages/taler-auditor-webui/src/components/menu/NavigationBar.tsx52L
-rw-r--r--packages/taler-auditor-webui/src/components/menu/SideBar.tsx117L
-rw-r--r--packages/taler-auditor-webui/src/components/menu/index.tsx73L
-rw-r--r--packages/taler-auditor-webui/src/components/modal/index.tsx72L
-rw-r--r--packages/taler-auditor-webui/src/context/backend.ts53L
-rw-r--r--packages/taler-auditor-webui/src/context/config.ts30L
-rw-r--r--packages/taler-auditor-webui/src/context/entity.ts50L
-rw-r--r--packages/taler-auditor-webui/src/custom.d.ts38L
-rw-r--r--packages/taler-auditor-webui/src/declaration.d.ts151L
-rw-r--r--packages/taler-auditor-webui/src/hooks/backend.ts245L
-rw-r--r--packages/taler-auditor-webui/src/hooks/critical.ts72L
-rw-r--r--packages/taler-auditor-webui/src/hooks/entity.ts77L
-rw-r--r--packages/taler-auditor-webui/src/hooks/finance.ts74L
-rw-r--r--packages/taler-auditor-webui/src/hooks/index.test.ts45L
-rw-r--r--packages/taler-auditor-webui/src/hooks/index.ts106L
-rw-r--r--packages/taler-auditor-webui/src/hooks/operational.ts72L
-rw-r--r--packages/taler-auditor-webui/src/hooks/overview.ts88L
-rw-r--r--packages/taler-auditor-webui/src/i18n/de.po302L
-rw-r--r--packages/taler-auditor-webui/src/i18n/en.po262L
-rw-r--r--packages/taler-auditor-webui/src/i18n/poheader27L
-rw-r--r--packages/taler-auditor-webui/src/i18n/strings-prelude19L
-rw-r--r--packages/taler-auditor-webui/src/i18n/strings.ts212L
-rw-r--r--packages/taler-auditor-webui/src/i18n/taler-auditor-backoffice.pot259L
-rw-r--r--packages/taler-auditor-webui/src/i18n/taler-merchant-backoffice.pot2736L
-rw-r--r--packages/taler-auditor-webui/src/index.html40L
-rw-r--r--packages/taler-auditor-webui/src/index.tsx23L
-rw-r--r--packages/taler-auditor-webui/src/paths/default/Table.tsx130L
-rw-r--r--packages/taler-auditor-webui/src/paths/default/index.tsx116L
-rw-r--r--packages/taler-auditor-webui/src/paths/details/ListPage.tsx60L
-rw-r--r--packages/taler-auditor-webui/src/paths/details/index.tsx32L
-rw-r--r--packages/taler-auditor-webui/src/paths/developer/index.tsx175L
-rw-r--r--packages/taler-auditor-webui/src/paths/finance/ListPage.test.ts30L
-rw-r--r--packages/taler-auditor-webui/src/paths/finance/ListPage.tsx276L
-rw-r--r--packages/taler-auditor-webui/src/paths/finance/index.tsx66L
-rw-r--r--packages/taler-auditor-webui/src/paths/login/index.tsx12L
-rw-r--r--packages/taler-auditor-webui/src/paths/notfound/index.tsx38L
-rw-r--r--packages/taler-auditor-webui/src/paths/operations/ListPage.tsx85L
-rw-r--r--packages/taler-auditor-webui/src/paths/operations/index.tsx66L
-rw-r--r--packages/taler-auditor-webui/src/paths/overview/ListPage.tsx166L
-rw-r--r--packages/taler-auditor-webui/src/paths/overview/index.tsx57L
-rw-r--r--packages/taler-auditor-webui/src/paths/overview/model.test.ts75L
-rw-r--r--packages/taler-auditor-webui/src/paths/overview/model.ts62L
-rw-r--r--packages/taler-auditor-webui/src/paths/security/ListPage.tsx76L
-rw-r--r--packages/taler-auditor-webui/src/paths/security/index.tsx69L
-rw-r--r--packages/taler-auditor-webui/src/paths/settings/index.tsx43L
-rw-r--r--packages/taler-auditor-webui/src/routing/monitoringRoutes.test.ts112L
-rw-r--r--packages/taler-auditor-webui/src/routing/monitoringRoutes.ts374L
-rw-r--r--packages/taler-auditor-webui/src/routing/useHashLocation.test.ts28L
-rw-r--r--packages/taler-auditor-webui/src/routing/useHashLocation.ts19L
-rw-r--r--packages/taler-auditor-webui/src/scss/fonts/XRXV3I6Li01BKofINeaE.ttf43752B
-rw-r--r--packages/taler-auditor-webui/src/scss/icons/fonts/materialdesignicons-webfont-4.9.95.eot844600B
-rw-r--r--packages/taler-auditor-webui/src/scss/icons/fonts/materialdesignicons-webfont-4.9.95.ttf844380B
-rw-r--r--packages/taler-auditor-webui/src/scss/icons/fonts/materialdesignicons-webfont-4.9.95.woff404384B
-rw-r--r--packages/taler-auditor-webui/src/scss/icons/fonts/materialdesignicons-webfont-4.9.95.woff2283040B
-rw-r--r--packages/taler-auditor-webui/src/style.css62L
-rw-r--r--packages/taler-auditor-webui/src/utils/http.ts238L
-rw-r--r--packages/taler-auditor-webui/src/utils/issues.test.ts94L
-rw-r--r--packages/taler-auditor-webui/src/utils/issues.ts95L
-rw-r--r--packages/taler-auditor-webui/src/utils/types.ts30L
-rw-r--r--packages/taler-auditor-webui/tailwind.config.js21L
-rwxr-xr-xpackages/taler-auditor-webui/test.mjs30L
-rw-r--r--packages/taler-auditor-webui/tsconfig.json20L
-rw-r--r--packages/taler-exchange-aml-webui/.gitignore4L
-rw-r--r--packages/taler-exchange-aml-webui/.prettierignore1L
-rw-r--r--packages/taler-exchange-aml-webui/Makefile36L
-rw-r--r--packages/taler-exchange-aml-webui/README.md11L
-rwxr-xr-xpackages/taler-exchange-aml-webui/build.mjs29L
-rw-r--r--packages/taler-exchange-aml-webui/copyleft-header.js15L
-rw-r--r--packages/taler-exchange-aml-webui/debian/control15L
-rw-r--r--packages/taler-exchange-aml-webui/debian/copyright699L
-rwxr-xr-xpackages/taler-exchange-aml-webui/debian/rules19L
-rwxr-xr-xpackages/taler-exchange-aml-webui/dev.mjs41L
-rw-r--r--packages/taler-exchange-aml-webui/package.json49L
-rw-r--r--packages/taler-exchange-aml-webui/postcss.config.js6L
-rw-r--r--packages/taler-exchange-aml-webui/src/App.tsx222L
-rw-r--r--packages/taler-exchange-aml-webui/src/ExchangeAmlFrame.tsx169L
-rw-r--r--packages/taler-exchange-aml-webui/src/Routing.test.tsx116L
-rw-r--r--packages/taler-exchange-aml-webui/src/Routing.tsx816L
-rw-r--r--packages/taler-exchange-aml-webui/src/assets/csv-icon.png8498B
-rw-r--r--packages/taler-exchange-aml-webui/src/assets/excel-icon.png13751B
-rw-r--r--packages/taler-exchange-aml-webui/src/assets/home.svg3L
-rw-r--r--packages/taler-exchange-aml-webui/src/assets/logo-2021.svg9L
-rw-r--r--packages/taler-exchange-aml-webui/src/assets/pdf-icon.png9092B
-rw-r--r--packages/taler-exchange-aml-webui/src/assets/people.svg3L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/AccessCheckStatus.tsx29L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/AccountBadges.test.ts64L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/AccountBadges.tsx105L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/AccountCaseShell.tsx485L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/AccountSummary.test.tsx72L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/AccountSummary.tsx161L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/ConfirmationModal.tsx105L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/CreateSession.tsx143L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/DecisionHistory.stories.tsx258L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/DecisionProperties.tsx96L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/ExpirationShortcuts.tsx55L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/HandleAccountNotReady.tsx35L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/MeasureDetails.stories.tsx114L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/MeasureDetails.tsx339L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/MeasureSelection.test.ts56L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/MeasureSelection.ts55L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/NewMeasure.tsx1122L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/OfficerAccessFailure.tsx99L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/OfficerEnrollment.test.ts46L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/OfficerEnrollment.tsx169L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/PaytoTargetDetails.stories.tsx104L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/PaytoTargetDetails.test.ts187L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/PaytoTargetDetails.tsx245L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/RulesInfo.tsx320L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/ShowDecisionLimitInfo.test.tsx193L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/ShowDecisionLimitInfo.tsx450L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/ShowLegitimizationInfo.tsx143L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/UnlockSession.test.tsx116L
-rw-r--r--packages/taler-exchange-aml-webui/src/components/UnlockSession.tsx202L
-rw-r--r--packages/taler-exchange-aml-webui/src/context/officer-info.tsx34L
-rw-r--r--packages/taler-exchange-aml-webui/src/context/ui-forms.test.ts23L
-rw-r--r--packages/taler-exchange-aml-webui/src/context/ui-forms.ts56L
-rw-r--r--packages/taler-exchange-aml-webui/src/context/ui-settings.ts111L
-rw-r--r--packages/taler-exchange-aml-webui/src/declaration.d.ts46L
-rw-r--r--packages/taler-exchange-aml-webui/src/hooks/account.ts163L
-rw-r--r--packages/taler-exchange-aml-webui/src/hooks/decision-request.ts199L
-rw-r--r--packages/taler-exchange-aml-webui/src/hooks/decisions.ts292L
-rw-r--r--packages/taler-exchange-aml-webui/src/hooks/legitimizations.ts102L
-rw-r--r--packages/taler-exchange-aml-webui/src/hooks/officer.test.ts31L
-rw-r--r--packages/taler-exchange-aml-webui/src/hooks/officer.ts393L
-rw-r--r--packages/taler-exchange-aml-webui/src/hooks/preferences.ts118L
-rw-r--r--packages/taler-exchange-aml-webui/src/hooks/server-info.ts148L
-rw-r--r--packages/taler-exchange-aml-webui/src/hooks/transfers.test.ts71L
-rw-r--r--packages/taler-exchange-aml-webui/src/hooks/transfers.ts151L
-rw-r--r--packages/taler-exchange-aml-webui/src/i18n/aml-backoffice.pot4402L
-rw-r--r--packages/taler-exchange-aml-webui/src/i18n/bank.pot486L
-rw-r--r--packages/taler-exchange-aml-webui/src/i18n/de.po5577L
-rw-r--r--packages/taler-exchange-aml-webui/src/i18n/en.po5348L
-rw-r--r--packages/taler-exchange-aml-webui/src/i18n/es.po5759L
-rw-r--r--packages/taler-exchange-aml-webui/src/i18n/fr.po5524L
-rw-r--r--packages/taler-exchange-aml-webui/src/i18n/it.po5641L
-rw-r--r--packages/taler-exchange-aml-webui/src/i18n/poheader26L
-rw-r--r--packages/taler-exchange-aml-webui/src/i18n/strings-prelude19L
-rw-r--r--packages/taler-exchange-aml-webui/src/i18n/strings.ts5619L
-rw-r--r--packages/taler-exchange-aml-webui/src/index.html45L
-rw-r--r--packages/taler-exchange-aml-webui/src/index.tsx25L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/AccountDecisionHistory.stories.tsx143L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/AccountDecisionHistory.tsx148L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/AccountDetails.stories.tsx339L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/AccountDetails.tsx624L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/AccountList.stories.tsx200L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/AccountList.test.tsx178L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/AccountList.tsx720L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Dashboard.stories.tsx101L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Dashboard.test.tsx57L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Dashboard.tsx503L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/DecisionWizard.stories.tsx429L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/DecisionWizard.test.ts25L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/DecisionWizard.tsx302L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Developer.stories.tsx26L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Developer.tsx305L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Forms.test.ts127L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Forms.tsx333L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Info.stories.tsx152L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Info.test.tsx107L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Info.tsx472L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/OfficerAccess.stories.tsx237L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Profile.tsx244L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Search.stories.tsx58L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Search.test.tsx76L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Search.tsx938L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/ShowCollectedInfo.stories.tsx52L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/ShowCollectedInfo.test.tsx190L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/ShowCollectedInfo.tsx513L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Transfers.stories.tsx241L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Transfers.test.ts73L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/Transfers.tsx501L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Events.test.tsx131L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Events.tsx310L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Information.test.ts101L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Information.tsx393L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Justification.test.tsx146L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Justification.tsx196L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Measures.tsx691L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Properties.test.ts31L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Properties.tsx422L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Rules.test.tsx148L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Rules.tsx1219L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/decision/Summary.tsx620L
-rw-r--r--packages/taler-exchange-aml-webui/src/pages/index.stories.ts28L
-rw-r--r--packages/taler-exchange-aml-webui/src/scss/main.scss43L
-rw-r--r--packages/taler-exchange-aml-webui/src/settings.json4L
-rw-r--r--packages/taler-exchange-aml-webui/src/stories.tsx163L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/decision-dialect.test.ts85L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/decision-validation.test.ts226L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/decision-validation.ts211L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/dialect-info.test.ts49L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/dialect-info.ts256L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/dialect.test.ts45L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/dialect.ts24L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/measure-check.test.ts20L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/measure-check.ts14L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/rule-defaults.test.ts76L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/rule-defaults.ts60L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/rule-validation.test.ts112L
-rw-r--r--packages/taler-exchange-aml-webui/src/utils/rule-validation.ts124L
-rw-r--r--packages/taler-exchange-aml-webui/tailwind.config.js112L
-rwxr-xr-xpackages/taler-exchange-aml-webui/test.mjs31L
-rw-r--r--packages/taler-exchange-aml-webui/tsconfig.json23L
-rw-r--r--packages/taler-exchange-kyc-webui/.gitignore4L
-rw-r--r--packages/taler-exchange-kyc-webui/.prettierignore1L
-rw-r--r--packages/taler-exchange-kyc-webui/Makefile36L
-rw-r--r--packages/taler-exchange-kyc-webui/README.md12L
-rwxr-xr-xpackages/taler-exchange-kyc-webui/build.mjs34L
-rw-r--r--packages/taler-exchange-kyc-webui/copyleft-header.js15L
-rw-r--r--packages/taler-exchange-kyc-webui/debian/control15L
-rw-r--r--packages/taler-exchange-kyc-webui/debian/copyright699L
-rwxr-xr-xpackages/taler-exchange-kyc-webui/debian/rules19L
-rwxr-xr-xpackages/taler-exchange-kyc-webui/dev.mjs47L
-rw-r--r--packages/taler-exchange-kyc-webui/package.json43L
-rw-r--r--packages/taler-exchange-kyc-webui/postcss.config.js21L
-rw-r--r--packages/taler-exchange-kyc-webui/src/Routing.tsx108L
-rw-r--r--packages/taler-exchange-kyc-webui/src/app.test.tsx51L
-rw-r--r--packages/taler-exchange-kyc-webui/src/app.tsx177L
-rw-r--r--packages/taler-exchange-kyc-webui/src/assets/home.svg3L
-rw-r--r--packages/taler-exchange-kyc-webui/src/assets/logo-2021.svg9L
-rw-r--r--packages/taler-exchange-kyc-webui/src/assets/people.svg3L
-rw-r--r--packages/taler-exchange-kyc-webui/src/context/notifier.ts58L
-rw-r--r--packages/taler-exchange-kyc-webui/src/context/preferences.ts79L
-rw-r--r--packages/taler-exchange-kyc-webui/src/context/settings.ts41L
-rw-r--r--packages/taler-exchange-kyc-webui/src/context/ui-forms.ts50L
-rw-r--r--packages/taler-exchange-kyc-webui/src/declaration.d.ts35L
-rw-r--r--packages/taler-exchange-kyc-webui/src/hooks/kyc.ts90L
-rw-r--r--packages/taler-exchange-kyc-webui/src/hooks/session.ts136L
-rw-r--r--packages/taler-exchange-kyc-webui/src/i18n/de.po2123L
-rw-r--r--packages/taler-exchange-kyc-webui/src/i18n/en.po283L
-rw-r--r--packages/taler-exchange-kyc-webui/src/i18n/es.po2115L
-rw-r--r--packages/taler-exchange-kyc-webui/src/i18n/he.po1991L
-rw-r--r--packages/taler-exchange-kyc-webui/src/i18n/kyc-ui.pot278L
-rw-r--r--packages/taler-exchange-kyc-webui/src/i18n/poheader26L
-rw-r--r--packages/taler-exchange-kyc-webui/src/i18n/strings.ts393L
-rw-r--r--packages/taler-exchange-kyc-webui/src/index.html45L
-rw-r--r--packages/taler-exchange-kyc-webui/src/index.tsx27L
-rw-r--r--packages/taler-exchange-kyc-webui/src/pages/ChallengeCompleted.tsx29L
-rw-r--r--packages/taler-exchange-kyc-webui/src/pages/FillForm.tsx272L
-rw-r--r--packages/taler-exchange-kyc-webui/src/pages/Frame.tsx141L
-rw-r--r--packages/taler-exchange-kyc-webui/src/pages/Start.tsx444L
-rw-r--r--packages/taler-exchange-kyc-webui/src/pages/TriggerForms.tsx106L
-rw-r--r--packages/taler-exchange-kyc-webui/src/pages/TriggerKyc.tsx311L
-rw-r--r--packages/taler-exchange-kyc-webui/src/scss/main.css3L
-rw-r--r--packages/taler-exchange-kyc-webui/src/settings.json3L
-rw-r--r--packages/taler-exchange-kyc-webui/src/settings.ts82L
-rw-r--r--packages/taler-exchange-kyc-webui/tailwind.config.js266L
-rwxr-xr-xpackages/taler-exchange-kyc-webui/test.mjs31L
-rw-r--r--packages/taler-exchange-kyc-webui/tsconfig.json32L
-rw-r--r--packages/taler-harness/Makefile61L
-rw-r--r--packages/taler-harness/README-challenger-tester.md141L
-rw-r--r--packages/taler-harness/README.md160L
-rwxr-xr-xpackages/taler-harness/bin/taler-harness.mjs19L
-rwxr-xr-xpackages/taler-harness/build.mjs90L
-rw-r--r--packages/taler-harness/debian/README8L
-rw-r--r--packages/taler-harness/debian/control17L
-rwxr-xr-xpackages/taler-harness/debian/rules19L
-rw-r--r--packages/taler-harness/package.json53L
-rw-r--r--packages/taler-harness/src/bench1.ts187L
-rw-r--r--packages/taler-harness/src/bench2.ts177L
-rw-r--r--packages/taler-harness/src/bench3.ts209L
-rw-r--r--packages/taler-harness/src/benchMerchantIDGenerator.ts84L
-rw-r--r--packages/taler-harness/src/benchWalletDb.ts139L
-rw-r--r--packages/taler-harness/src/challenger-tester.test.ts526L
-rw-r--r--packages/taler-harness/src/challenger-tester.ts989L
-rw-r--r--packages/taler-harness/src/env-full.ts104L
-rw-r--r--packages/taler-harness/src/env1.ts73L
-rw-r--r--packages/taler-harness/src/harness/bank-webui-browser.ts119L
-rw-r--r--packages/taler-harness/src/harness/browser-assertions.ts30L
-rw-r--r--packages/taler-harness/src/harness/denomStructures.ts157L
-rw-r--r--packages/taler-harness/src/harness/environments.ts1645L
-rw-r--r--packages/taler-harness/src/harness/fake-challenger.ts215L
-rw-r--r--packages/taler-harness/src/harness/faultInjection.ts282L
-rw-r--r--packages/taler-harness/src/harness/harness-donau.ts319L
-rw-r--r--packages/taler-harness/src/harness/harness.ts3379L
-rw-r--r--packages/taler-harness/src/harness/http-server.ts142L
-rw-r--r--packages/taler-harness/src/harness/lifecycle.test.ts87L
-rw-r--r--packages/taler-harness/src/harness/merchant-service.test.ts92L
-rw-r--r--packages/taler-harness/src/harness/merchant-webui-browser.ts67L
-rw-r--r--packages/taler-harness/src/harness/tan-helper.ts203L
-rw-r--r--packages/taler-harness/src/harness/tops.ts1403L
-rw-r--r--packages/taler-harness/src/harness/webui-browser.ts64L
-rw-r--r--packages/taler-harness/src/harness/webui-server.ts262L
-rw-r--r--packages/taler-harness/src/import-meta-url.js2L
-rw-r--r--packages/taler-harness/src/index.ts2658L
-rw-r--r--packages/taler-harness/src/integrationtests/kyc-dynamic-measure-helper.ts181L
-rw-r--r--packages/taler-harness/src/integrationtests/kyc-form-withdrawal-helper.ts137L
-rw-r--r--packages/taler-harness/src/integrationtests/kyc-threshold-withdrawal-helper.ts128L
-rw-r--r--packages/taler-harness/src/integrationtests/merchant-kyc-auth-helper.ts174L
-rw-r--r--packages/taler-harness/src/integrationtests/merchant-webui-transactional-flows.ts614L
-rw-r--r--packages/taler-harness/src/integrationtests/test-account-restrictions.ts236L
-rw-r--r--packages/taler-harness/src/integrationtests/test-age-restrictions-deposit.ts105L
-rw-r--r--packages/taler-harness/src/integrationtests/test-age-restrictions-merchant.ts191L
-rw-r--r--packages/taler-harness/src/integrationtests/test-age-restrictions-mixed-merchant.ts146L
-rw-r--r--packages/taler-harness/src/integrationtests/test-age-restrictions-peer.ts135L
-rw-r--r--packages/taler-harness/src/integrationtests/test-balance-prospective.ts109L
-rw-r--r--packages/taler-harness/src/integrationtests/test-bank-api.ts180L
-rw-r--r--packages/taler-harness/src/integrationtests/test-bank-wop.ts82L
-rw-r--r--packages/taler-harness/src/integrationtests/test-claim-loop.ts219L
-rw-r--r--packages/taler-harness/src/integrationtests/test-claim-retry-backoff.ts158L
-rw-r--r--packages/taler-harness/src/integrationtests/test-clause-schnorr.ts136L
-rw-r--r--packages/taler-harness/src/integrationtests/test-coinsel-legacy-2024.ts160L
-rw-r--r--packages/taler-harness/src/integrationtests/test-currency-scope-separation.ts254L
-rw-r--r--packages/taler-harness/src/integrationtests/test-currency-scope.ts275L
-rw-r--r--packages/taler-harness/src/integrationtests/test-denom-lost-complex.ts140L
-rw-r--r--packages/taler-harness/src/integrationtests/test-denom-lost.ts86L
-rw-r--r--packages/taler-harness/src/integrationtests/test-denom-revoked-balance.ts253L
-rw-r--r--packages/taler-harness/src/integrationtests/test-denom-unoffered.ts181L
-rw-r--r--packages/taler-harness/src/integrationtests/test-deposit-fault.ts216L
-rw-r--r--packages/taler-harness/src/integrationtests/test-deposit-merge.ts244L
-rw-r--r--packages/taler-harness/src/integrationtests/test-deposit-too-large.ts152L
-rw-r--r--packages/taler-harness/src/integrationtests/test-deposit-twice.ts247L
-rw-r--r--packages/taler-harness/src/integrationtests/test-deposit.ts186L
-rw-r--r--packages/taler-harness/src/integrationtests/test-donau-charity-management.ts83L
-rw-r--r--packages/taler-harness/src/integrationtests/test-donau-idempotency.ts263L
-rw-r--r--packages/taler-harness/src/integrationtests/test-donau-keychange.ts258L
-rw-r--r--packages/taler-harness/src/integrationtests/test-donau-minus-t.ts216L
-rw-r--r--packages/taler-harness/src/integrationtests/test-donau-multi.ts300L
-rw-r--r--packages/taler-harness/src/integrationtests/test-donau.ts264L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-aml-webui.ts1028L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-currency-change.ts155L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-denom-storage.ts157L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-deposit.ts169L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-ephemeral.ts178L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-keys-cherrypick.ts320L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-keys-withdraw-filter.ts324L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-kyc-auth.ts365L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-management-fault.ts308L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-management.ts181L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-master-pub-change.ts234L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-merchant-kyc-auth.ts148L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-purse.ts222L
-rw-r--r--packages/taler-harness/src/integrationtests/test-exchange-timetravel.ts294L
-rw-r--r--packages/taler-harness/src/integrationtests/test-fee-regression.ts267L
-rw-r--r--packages/taler-harness/src/integrationtests/test-forced-selection.ts87L
-rw-r--r--packages/taler-harness/src/integrationtests/test-known-accounts.ts147L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-amp-failure.ts109L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-amp-timeout.ts109L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-balance-withdrawal-change-manual.ts106L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-balance-withdrawal.ts228L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-challenger.ts375L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-decision-attr.ts140L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-decision-events.ts138L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-decisions.ts233L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-deposit-aggregate-implicit-auth.ts141L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-deposit-aggregate.ts169L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-deposit-deposit.ts245L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-deposit-kycauth.ts220L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-exchange-wallet.ts111L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-fail-recover-simple.ts209L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-form-bad-measure.ts152L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-form-compression.ts95L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-form-validation.ts192L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-merchant-aggregate.ts141L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-merchant-deposit-form.ts275L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-merchant-deposit-rewrite.ts267L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-merchant-deposit.ts297L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-merchant-wallet-reuse.ts119L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-new-measure.ts311L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-new-measures-prog.ts71L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-peer-pull.ts203L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-peer-push.ts193L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-skip-expiration.ts53L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-two-forms.ts266L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-wallet-deposit-abort.ts147L
-rw-r--r--packages/taler-harness/src/integrationtests/test-kyc-withdrawal-verboten.ts112L
-rw-r--r--packages/taler-harness/src/integrationtests/test-libeufin-bank-webui.ts1377L
-rw-r--r--packages/taler-harness/src/integrationtests/test-libeufin-bank.ts238L
-rw-r--r--packages/taler-harness/src/integrationtests/test-libeufin-conversion.ts249L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-acctsel.ts187L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-deposit-large.ts221L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-exchange-confusion.ts319L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-exchange-duplicate.ts190L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-instance-casing.ts355L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-instances.ts381L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-kyc-auth-multi.ts216L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-kyc-notifications.ts359L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-longpolling.ts188L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-order-listing.ts198L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-payto-reuse.ts282L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-refund-api.ts160L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-refund-fees.ts188L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-reports.ts219L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-self-provision-activation.ts270L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-self-provision-inactive-account-permissions.ts261L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-sessions.ts133L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-spec-public-orders.ts223L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-templates.ts110L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-tokenfamilies.ts362L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-tokenfamily-keys.ts248L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-webui-bootstrap.ts114L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-webui-kyc-swap.ts319L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-webui-mfa.ts599L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-webui-simple.ts1535L
-rw-r--r--packages/taler-harness/src/integrationtests/test-merchant-wire.ts235L
-rw-r--r--packages/taler-harness/src/integrationtests/test-multiexchange.ts430L
-rw-r--r--packages/taler-harness/src/integrationtests/test-otp.ts137L
-rw-r--r--packages/taler-harness/src/integrationtests/test-paivana-head.ts91L
-rw-r--r--packages/taler-harness/src/integrationtests/test-paivana-repurchase.ts148L
-rw-r--r--packages/taler-harness/src/integrationtests/test-pay-paid.ts276L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-abort.ts193L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-claim-cleanup.ts178L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-claim.ts283L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-deleted.ts136L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-expired.ts212L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-forgettable.ts101L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-multiple.ts231L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-order-gone.ts156L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-template.ts199L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-transient.ts205L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment-unclaim.ts158L
-rw-r--r--packages/taler-harness/src/integrationtests/test-payment.ts205L
-rw-r--r--packages/taler-harness/src/integrationtests/test-paywall-flow.ts327L
-rw-r--r--packages/taler-harness/src/integrationtests/test-peer-abort-balance.ts383L
-rw-r--r--packages/taler-harness/src/integrationtests/test-peer-pull-debit-purse-gone.ts137L
-rw-r--r--packages/taler-harness/src/integrationtests/test-peer-pull-large.ts138L
-rw-r--r--packages/taler-harness/src/integrationtests/test-peer-pull.ts657L
-rw-r--r--packages/taler-harness/src/integrationtests/test-peer-push-large.ts146L
-rw-r--r--packages/taler-harness/src/integrationtests/test-peer-push.ts693L
-rw-r--r--packages/taler-harness/src/integrationtests/test-peer-repair.ts253L
-rw-r--r--packages/taler-harness/src/integrationtests/test-prepared-transfer.ts172L
-rw-r--r--packages/taler-harness/src/integrationtests/test-refund-auto.ts237L
-rw-r--r--packages/taler-harness/src/integrationtests/test-refund-gone.ts169L
-rw-r--r--packages/taler-harness/src/integrationtests/test-refund-incremental.ts245L
-rw-r--r--packages/taler-harness/src/integrationtests/test-refund.ts219L
-rw-r--r--packages/taler-harness/src/integrationtests/test-repurchase.ts236L
-rw-r--r--packages/taler-harness/src/integrationtests/test-revocation.ts300L
-rw-r--r--packages/taler-harness/src/integrationtests/test-simple-payment.ts69L
-rw-r--r--packages/taler-harness/src/integrationtests/test-timetravel-autorefresh.ts300L
-rw-r--r--packages/taler-harness/src/integrationtests/test-timetravel-withdraw.ts109L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-basic.ts266L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-custom-addr-postal.ts260L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-custom-addr-sms.ts286L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-expired-successor.ts220L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-kyx-natural.ts182L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-measures.ts272L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-null-current-rules.ts199L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-p2p-fresh-wallet.ts244L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-pdf.ts919L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-sanction-preserves-rules.ts330L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-aml-stale-validation.ts235L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-merchant-simple-kycauth.ts181L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-merchant-swt-kycauth.ts201L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-merchant-tos.ts136L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-nexus-basic.ts143L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-nexus-swt.ts204L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tops-peer.ts219L
-rw-r--r--packages/taler-harness/src/integrationtests/test-tos-format.ts130L
-rw-r--r--packages/taler-harness/src/integrationtests/test-util-merchant-client.ts110L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-bad-network.ts93L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-balance-zero.ts70L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-balance.ts305L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-bban.ts121L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-contacts-basic.ts73L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-cryptoworker.ts40L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-dbless.ts177L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-dd48.ts215L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-denom-expire.ts87L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-deposit-large.ts137L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-dev-experiments.ts48L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-devexp-fakeprotover.ts116L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-exchange-features.ts140L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-exchange-migration.ts203L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-exchange-update.ts243L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-gendb.ts121L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-insufficient-balance.ts399L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-mailbox-basic.ts84L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-missing-tos.ts90L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-network-availability.ts108L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-notifications.ts276L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-progress-token.ts354L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-refresh-errors.ts148L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-refresh-redenominate.ts131L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-refresh.ts219L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-tokens-discount.ts290L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-tokens.ts787L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-transactions.ts339L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-chrome-extension-withdrawal.ts233L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-demo.ts231L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-extension-integration.ts858L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-extension-sqlite.ts410L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-extension-upgrade.ts583L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-firefox-extension-withdrawal.ts255L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-cash-acceptor.ts121L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-deposit-kyc-auth-swiss.ts334L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-deposit-kyc-auth.ts277L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-donau.ts459L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-errors.ts356L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-lifecycle.ts175L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-peer-deposit.ts316L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-peer-tos.ts229L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-sqlite.ts1239L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-startup.ts158L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-storybook.ts121L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-web-ui-pwa-withdrawal.ts1259L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-wirefees.ts245L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallet-withdrawal-redenominate.ts177L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wallettesting.ts164L
-rw-r--r--packages/taler-harness/src/integrationtests/test-wire-metadata.ts312L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-abort-bank.ts81L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-amount.ts115L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-bad-suggested-exchange.ts96L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-bank-integrated.ts227L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-bank-outage.ts124L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-cashacceptor.ts125L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-conflict.ts158L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-conversion.ts323L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-external.ts109L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-fakebank.ts107L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-fees.ts216L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-flex.ts88L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-handover.ts206L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-huge.ts155L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-idempotent.ts171L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-manual.ts140L
-rw-r--r--packages/taler-harness/src/integrationtests/test-withdrawal-shorten.ts139L
-rw-r--r--packages/taler-harness/src/integrationtests/testrunner.ts1216L
-rw-r--r--packages/taler-harness/src/integrationtests/todo.test.ts104L
-rw-r--r--packages/taler-harness/src/integrationtests/todo.ts34L
-rw-r--r--packages/taler-harness/src/integrationtests/wallet-web-ui-test-support.ts198L
-rw-r--r--packages/taler-harness/src/lint.ts677L
-rw-r--r--packages/taler-harness/src/playground.ts372L
-rw-r--r--packages/taler-harness/src/stagefright/merchant-mytops.ts298L
-rw-r--r--packages/taler-harness/src/stagefright/merchant-webui.ts2588L
-rw-r--r--packages/taler-harness/src/stagefright/mock2fa.ts165L
-rw-r--r--packages/taler-harness/src/stagefright/stage.ts350L
-rw-r--r--packages/taler-harness/src/stagefright/webdriver-stage.ts643L
-rw-r--r--packages/taler-harness/tsconfig.json18L
-rw-r--r--packages/taler-merchant-webui/.gitignore5L
-rw-r--r--packages/taler-merchant-webui/Makefile36L
-rw-r--r--packages/taler-merchant-webui/README.md80L
-rwxr-xr-xpackages/taler-merchant-webui/build.mjs35L
-rw-r--r--packages/taler-merchant-webui/contrib/qa/tutorial-preview-check.mjs429L
-rw-r--r--packages/taler-merchant-webui/contrib/qa/version.test.mjs53L
-rw-r--r--packages/taler-merchant-webui/debian/control15L
-rw-r--r--packages/taler-merchant-webui/debian/copyright699L
-rwxr-xr-xpackages/taler-merchant-webui/debian/rules19L
-rwxr-xr-xpackages/taler-merchant-webui/dev.mjs39L
-rw-r--r--packages/taler-merchant-webui/esbuild.config.mjs114L
-rw-r--r--packages/taler-merchant-webui/package.json49L
-rw-r--r--packages/taler-merchant-webui/src/App.tsx1157L
-rw-r--r--packages/taler-merchant-webui/src/api/client.test.ts206L
-rw-r--r--packages/taler-merchant-webui/src/api/client.ts493L
-rw-r--r--packages/taler-merchant-webui/src/api/concurrency.ts24L
-rw-r--r--packages/taler-merchant-webui/src/api/contracts.test.ts41L
-rw-r--r--packages/taler-merchant-webui/src/api/contracts.ts79L
-rw-r--r--packages/taler-merchant-webui/src/api/failure.ts287L
-rw-r--r--packages/taler-merchant-webui/src/api/failures.test.tsx269L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks.test.ts590L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks.ts32L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/common.ts70L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useAccessTokens.ts192L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useBootstrapInstance.ts88L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useBusinessSettings.ts254L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useInventory.ts318L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useManagedInstances.ts214L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useMerchantConfig.test.ts32L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useMerchantConfig.ts74L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useOrders.ts726L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useOtpDevices.ts168L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/usePayoutAccounts.ts166L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useReportsAndStats.ts238L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useTemplates.ts221L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useTokenFamilies.ts310L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useTransfersAndKyc.ts223L
-rw-r--r--packages/taler-merchant-webui/src/api/hooks/useWebhooks.ts165L
-rw-r--r--packages/taler-merchant-webui/src/api/liveRequest.test.ts72L
-rw-r--r--packages/taler-merchant-webui/src/api/liveRequest.ts188L
-rw-r--r--packages/taler-merchant-webui/src/api/merchantBackendFeatures.test.ts17L
-rw-r--r--packages/taler-merchant-webui/src/api/merchantBackendFeatures.ts24L
-rw-r--r--packages/taler-merchant-webui/src/api/protectedAction.ts37L
-rw-r--r--packages/taler-merchant-webui/src/api/swr.ts64L
-rw-r--r--packages/taler-merchant-webui/src/api/tokenRefresh.test.ts421L
-rw-r--r--packages/taler-merchant-webui/src/api/tokenRefresh.ts359L
-rw-r--r--packages/taler-merchant-webui/src/api/transfers.test.ts130L
-rw-r--r--packages/taler-merchant-webui/src/context/translation.tsx193L
-rw-r--r--packages/taler-merchant-webui/src/declaration.d.ts1L
-rw-r--r--packages/taler-merchant-webui/src/i18n/catalog.test.ts558L
-rw-r--r--packages/taler-merchant-webui/src/i18n/de.po14265L
-rw-r--r--packages/taler-merchant-webui/src/i18n/fr.po14226L
-rw-r--r--packages/taler-merchant-webui/src/i18n/it.po14159L
-rw-r--r--packages/taler-merchant-webui/src/i18n/strings.ts17148L
-rw-r--r--packages/taler-merchant-webui/src/i18n/taler-merchant-webui.pot12780L
-rw-r--r--packages/taler-merchant-webui/src/index.html18L
-rw-r--r--packages/taler-merchant-webui/src/index.tsx31L
-rw-r--r--packages/taler-merchant-webui/src/reviewFixes.test.ts146L
-rw-r--r--packages/taler-merchant-webui/src/routes/AccessRoute.tsx177L
-rw-r--r--packages/taler-merchant-webui/src/routes/AdminAccountsRoutes.tsx336L
-rw-r--r--packages/taler-merchant-webui/src/routes/BootstrapInstanceRoute.tsx80L
-rw-r--r--packages/taler-merchant-webui/src/routes/BusinessSettingsRoute.tsx172L
-rw-r--r--packages/taler-merchant-webui/src/routes/ChangeServerUrlRoute.tsx41L
-rw-r--r--packages/taler-merchant-webui/src/routes/CreateAccessRoute.tsx100L
-rw-r--r--packages/taler-merchant-webui/src/routes/CreateDeviceRoute.tsx32L
-rw-r--r--packages/taler-merchant-webui/src/routes/CreateOrderRoute.tsx98L
-rw-r--r--packages/taler-merchant-webui/src/routes/CreateProductRoute.tsx62L
-rw-r--r--packages/taler-merchant-webui/src/routes/CreateSubscriptionRoute.tsx58L
-rw-r--r--packages/taler-merchant-webui/src/routes/CreateTemplateRoute.tsx57L
-rw-r--r--packages/taler-merchant-webui/src/routes/CreateWebhookRoute.tsx42L
-rw-r--r--packages/taler-merchant-webui/src/routes/DevicesRoute.tsx54L
-rw-r--r--packages/taler-merchant-webui/src/routes/InventoryRoute.tsx51L
-rw-r--r--packages/taler-merchant-webui/src/routes/KycAuthInstructionsRoute.tsx293L
-rw-r--r--packages/taler-merchant-webui/src/routes/MfaChallengeRoute.tsx178L
-rw-r--r--packages/taler-merchant-webui/src/routes/MoneyInRoute.tsx56L
-rw-r--r--packages/taler-merchant-webui/src/routes/OrderDetailRoute.tsx35L
-rw-r--r--packages/taler-merchant-webui/src/routes/OrderListRoute.tsx78L
-rw-r--r--packages/taler-merchant-webui/src/routes/OrderRefundRoute.tsx37L
-rw-r--r--packages/taler-merchant-webui/src/routes/PaymentServicesRoute.tsx41L
-rw-r--r--packages/taler-merchant-webui/src/routes/PosRoute.tsx188L
-rw-r--r--packages/taler-merchant-webui/src/routes/README.md47L
-rw-r--r--packages/taler-merchant-webui/src/routes/ReportsRoute.tsx79L
-rw-r--r--packages/taler-merchant-webui/src/routes/ScheduleReportRoute.tsx32L
-rw-r--r--packages/taler-merchant-webui/src/routes/SelfProvisionRoute.tsx323L
-rw-r--r--packages/taler-merchant-webui/src/routes/ServerInfoRoute.tsx30L
-rw-r--r--packages/taler-merchant-webui/src/routes/SignInRoute.tsx183L
-rw-r--r--packages/taler-merchant-webui/src/routes/StatisticsRoute.tsx62L
-rw-r--r--packages/taler-merchant-webui/src/routes/SubscriptionsRoute.tsx97L
-rw-r--r--packages/taler-merchant-webui/src/routes/TemplateDetailsRoute.tsx53L
-rw-r--r--packages/taler-merchant-webui/src/routes/TemplatesRoute.tsx32L
-rw-r--r--packages/taler-merchant-webui/src/routes/WebhooksRoute.tsx33L
-rw-r--r--packages/taler-merchant-webui/src/routes/access.test.tsx206L
-rw-r--r--packages/taler-merchant-webui/src/routes/kycAuthInstructions.test.ts133L
-rw-r--r--packages/taler-merchant-webui/src/routes/pos.test.ts130L
-rw-r--r--packages/taler-merchant-webui/src/routes/selfProvision.test.ts349L
-rw-r--r--packages/taler-merchant-webui/src/routes/signIn.test.ts303L
-rw-r--r--packages/taler-merchant-webui/src/routing/Link.tsx68L
-rw-r--r--packages/taler-merchant-webui/src/routing/resourcePath.test.ts13L
-rw-r--r--packages/taler-merchant-webui/src/routing/resourcePath.ts27L
-rw-r--r--packages/taler-merchant-webui/src/routing/useHashLocation.ts57L
-rw-r--r--packages/taler-merchant-webui/src/routing/useQueryParams.ts43L
-rw-r--r--packages/taler-merchant-webui/src/screens/AccessScreen.tsx700L
-rw-r--r--packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx445L
-rw-r--r--packages/taler-merchant-webui/src/screens/AdminAccountCredentialsScreen.tsx112L
-rw-r--r--packages/taler-merchant-webui/src/screens/AdminAccountDetailScreen.tsx282L
-rw-r--r--packages/taler-merchant-webui/src/screens/AdminAccountFormScreen.tsx496L
-rw-r--r--packages/taler-merchant-webui/src/screens/AdminAccountsScreen.tsx322L
-rw-r--r--packages/taler-merchant-webui/src/screens/BootstrapInstanceScreen.tsx203L
-rw-r--r--packages/taler-merchant-webui/src/screens/BusinessSettingsScreen.tsx956L
-rw-r--r--packages/taler-merchant-webui/src/screens/ChangeServerUrlScreen.tsx270L
-rw-r--r--packages/taler-merchant-webui/src/screens/CreateAccessScreen.tsx423L
-rw-r--r--packages/taler-merchant-webui/src/screens/CreateDeviceScreen.tsx484L
-rw-r--r--packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx1664L
-rw-r--r--packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx916L
-rw-r--r--packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx1860L
-rw-r--r--packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx795L
-rw-r--r--packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx618L
-rw-r--r--packages/taler-merchant-webui/src/screens/DevSettingsScreen.tsx692L
-rw-r--r--packages/taler-merchant-webui/src/screens/DevicesScreen.tsx407L
-rw-r--r--packages/taler-merchant-webui/src/screens/ErrorInjectionTestScreen.tsx565L
-rw-r--r--packages/taler-merchant-webui/src/screens/ForgotPasswordScreen.tsx219L
-rw-r--r--packages/taler-merchant-webui/src/screens/GuidedSetupScreen.tsx495L
-rw-r--r--packages/taler-merchant-webui/src/screens/InteractiveTutorialScreen.tsx615L
-rw-r--r--packages/taler-merchant-webui/src/screens/InventoryScreen.tsx940L
-rw-r--r--packages/taler-merchant-webui/src/screens/KycAuthInstructionsScreen.tsx1015L
-rw-r--r--packages/taler-merchant-webui/src/screens/MfaChallengeScreen.tsx90L
-rw-r--r--packages/taler-merchant-webui/src/screens/MoneyInScreen.tsx1308L
-rw-r--r--packages/taler-merchant-webui/src/screens/NotFoundScreen.tsx52L
-rw-r--r--packages/taler-merchant-webui/src/screens/OrderDetailScreen.tsx891L
-rw-r--r--packages/taler-merchant-webui/src/screens/OrderListScreen.tsx591L
-rw-r--r--packages/taler-merchant-webui/src/screens/OrderRefundScreen.tsx438L
-rw-r--r--packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx184L
-rw-r--r--packages/taler-merchant-webui/src/screens/PersonalizationScreen.tsx151L
-rw-r--r--packages/taler-merchant-webui/src/screens/PosScreen.tsx1499L
-rw-r--r--packages/taler-merchant-webui/src/screens/ReportsScreen.tsx1063L
-rw-r--r--packages/taler-merchant-webui/src/screens/ScheduleReportScreen.tsx360L
-rw-r--r--packages/taler-merchant-webui/src/screens/SelfProvisionScreen.tsx1078L
-rw-r--r--packages/taler-merchant-webui/src/screens/ServerInfoScreen.tsx266L
-rw-r--r--packages/taler-merchant-webui/src/screens/SignInScreen.tsx774L
-rw-r--r--packages/taler-merchant-webui/src/screens/StatisticsScreen.tsx751L
-rw-r--r--packages/taler-merchant-webui/src/screens/SubscriptionsScreen.tsx345L
-rw-r--r--packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx555L
-rw-r--r--packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx405L
-rw-r--r--packages/taler-merchant-webui/src/screens/UnauthorizedScreen.tsx107L
-rw-r--r--packages/taler-merchant-webui/src/screens/WebhooksScreen.tsx265L
-rw-r--r--packages/taler-merchant-webui/src/screens/create-order/CreateOrderAdvancedSection.tsx317L
-rw-r--r--packages/taler-merchant-webui/src/screens/create-order/CreateOrderChoiceModes.tsx697L
-rw-r--r--packages/taler-merchant-webui/src/screens/create-order/TokenAddRow.tsx104L
-rw-r--r--packages/taler-merchant-webui/src/screens/order-detail/OrderRefundSummary.tsx107L
-rw-r--r--packages/taler-merchant-webui/src/screens/order-detail/OrderTimeline.tsx367L
-rw-r--r--packages/taler-merchant-webui/src/screens/order-detail/orderTimeline.test.ts76L
-rw-r--r--packages/taler-merchant-webui/src/screens/pos/PosCartSummary.tsx323L
-rw-r--r--packages/taler-merchant-webui/src/screens/pos/PosCatalog.tsx226L
-rw-r--r--packages/taler-merchant-webui/src/screens/pos/PosNumpad.tsx143L
-rw-r--r--packages/taler-merchant-webui/src/screens/pos/README.md108L
-rw-r--r--packages/taler-merchant-webui/src/screens/screens.test.tsx9108L
-rw-r--r--packages/taler-merchant-webui/src/stores/devSettings.ts108L
-rw-r--r--packages/taler-merchant-webui/src/stores/persisted.test.ts152L
-rw-r--r--packages/taler-merchant-webui/src/stores/persisted.ts151L
-rw-r--r--packages/taler-merchant-webui/src/stores/preferences.ts69L
-rw-r--r--packages/taler-merchant-webui/src/stores/session.test.ts133L
-rw-r--r--packages/taler-merchant-webui/src/stores/session.ts429L
-rw-r--r--packages/taler-merchant-webui/src/stores/webuiConfig.test.ts81L
-rw-r--r--packages/taler-merchant-webui/src/stores/webuiConfig.ts204L
-rw-r--r--packages/taler-merchant-webui/src/stories/StoryViewerScreen.tsx355L
-rw-r--r--packages/taler-merchant-webui/src/stories/stories.test.tsx271L
-rw-r--r--packages/taler-merchant-webui/src/stories/story-data.tsx1489L
-rw-r--r--packages/taler-merchant-webui/src/stories/story-messages.test.ts32L
-rw-r--r--packages/taler-merchant-webui/src/stories/story-messages.ts388L
-rw-r--r--packages/taler-merchant-webui/src/style.css137L
-rw-r--r--packages/taler-merchant-webui/src/testing/error-injection-http.test.ts320L
-rw-r--r--packages/taler-merchant-webui/src/testing/error-injection-http.ts444L
-rw-r--r--packages/taler-merchant-webui/src/testing/fake-http.ts176L
-rw-r--r--packages/taler-merchant-webui/src/testing/setup.ts83L
-rw-r--r--packages/taler-merchant-webui/src/tutorial/LiveComponentPreview.tsx361L
-rw-r--r--packages/taler-merchant-webui/src/tutorial/demoData.ts670L
-rw-r--r--packages/taler-merchant-webui/src/tutorial/tutorialData.tsx2519L
-rw-r--r--packages/taler-merchant-webui/src/types/domain.ts221L
-rw-r--r--packages/taler-merchant-webui/src/ui/AccountCopySplitButton.tsx143L
-rw-r--r--packages/taler-merchant-webui/src/ui/AmountInput.tsx231L
-rw-r--r--packages/taler-merchant-webui/src/ui/ApiErrorBanner.tsx99L
-rw-r--r--packages/taler-merchant-webui/src/ui/BackendHostLink.test.tsx73L
-rw-r--r--packages/taler-merchant-webui/src/ui/BackendHostLink.tsx76L
-rw-r--r--packages/taler-merchant-webui/src/ui/Badge.tsx61L
-rw-r--r--packages/taler-merchant-webui/src/ui/Banner.tsx88L
-rw-r--r--packages/taler-merchant-webui/src/ui/Button.tsx88L
-rw-r--r--packages/taler-merchant-webui/src/ui/ConfirmDeleteModal.tsx73L
-rw-r--r--packages/taler-merchant-webui/src/ui/CopyErrorButton.tsx180L
-rw-r--r--packages/taler-merchant-webui/src/ui/CopyableAccount.tsx172L
-rw-r--r--packages/taler-merchant-webui/src/ui/DisclosureChevron.tsx35L
-rw-r--r--packages/taler-merchant-webui/src/ui/DurationInput.tsx364L
-rw-r--r--packages/taler-merchant-webui/src/ui/FooterControls.tsx37L
-rw-r--r--packages/taler-merchant-webui/src/ui/Header.tsx97L
-rw-r--r--packages/taler-merchant-webui/src/ui/ImageUploadInput.tsx256L
-rw-r--r--packages/taler-merchant-webui/src/ui/InitialLoadingState.tsx39L
-rw-r--r--packages/taler-merchant-webui/src/ui/Input.tsx111L
-rw-r--r--packages/taler-merchant-webui/src/ui/LanguageSwitcher.tsx54L
-rw-r--r--packages/taler-merchant-webui/src/ui/Layout.tsx127L
-rw-r--r--packages/taler-merchant-webui/src/ui/LoadingSpinner.tsx40L
-rw-r--r--packages/taler-merchant-webui/src/ui/LocationInput.tsx232L
-rw-r--r--packages/taler-merchant-webui/src/ui/Menu.tsx337L
-rw-r--r--packages/taler-merchant-webui/src/ui/Modal.tsx155L
-rw-r--r--packages/taler-merchant-webui/src/ui/OrderTokenSummary.tsx426L
-rw-r--r--packages/taler-merchant-webui/src/ui/PaginationControls.test.tsx69L
-rw-r--r--packages/taler-merchant-webui/src/ui/PaginationControls.tsx91L
-rw-r--r--packages/taler-merchant-webui/src/ui/PasswordInput.test.tsx63L
-rw-r--r--packages/taler-merchant-webui/src/ui/PasswordInput.tsx127L
-rw-r--r--packages/taler-merchant-webui/src/ui/RawLayout.tsx54L
-rw-r--r--packages/taler-merchant-webui/src/ui/ReadErrorBanner.tsx37L
-rw-r--r--packages/taler-merchant-webui/src/ui/ReloadControl.tsx93L
-rw-r--r--packages/taler-merchant-webui/src/ui/RowActions.test.tsx163L
-rw-r--r--packages/taler-merchant-webui/src/ui/RowActions.tsx182L
-rw-r--r--packages/taler-merchant-webui/src/ui/TalerLogo.tsx58L
-rw-r--r--packages/taler-merchant-webui/src/ui/TalerQrCode.tsx42L
-rw-r--r--packages/taler-merchant-webui/src/ui/TanCodeInputGroup.tsx106L
-rw-r--r--packages/taler-merchant-webui/src/ui/TokenRuleStatus.tsx70L
-rw-r--r--packages/taler-merchant-webui/src/ui/WireTransferDetails.tsx173L
-rw-r--r--packages/taler-merchant-webui/src/ui/accountCopySplitButton.test.tsx87L
-rw-r--r--packages/taler-merchant-webui/src/ui/copyableAccount.test.tsx96L
-rw-r--r--packages/taler-merchant-webui/src/ui/dropdownHooks.ts51L
-rw-r--r--packages/taler-merchant-webui/src/ui/errorBanner.test.tsx38L
-rw-r--r--packages/taler-merchant-webui/src/ui/imageDataUrl.test.tsx336L
-rw-r--r--packages/taler-merchant-webui/src/ui/imageDataUrl.ts110L
-rw-r--r--packages/taler-merchant-webui/src/ui/menuStructure.ts108L
-rw-r--r--packages/taler-merchant-webui/src/ui/useDeleteConfirm.test.tsx85L
-rw-r--r--packages/taler-merchant-webui/src/ui/useDeleteConfirm.ts66L
-rw-r--r--packages/taler-merchant-webui/src/utils/challengeRounds.test.ts86L
-rw-r--r--packages/taler-merchant-webui/src/utils/challengeRounds.ts159L
-rw-r--r--packages/taler-merchant-webui/src/utils/csv.test.ts17L
-rw-r--r--packages/taler-merchant-webui/src/utils/csv.ts40L
-rw-r--r--packages/taler-merchant-webui/src/utils/errors.ts359L
-rw-r--r--packages/taler-merchant-webui/src/utils/orders.test.ts75L
-rw-r--r--packages/taler-merchant-webui/src/utils/orders.ts123L
-rw-r--r--packages/taler-merchant-webui/src/utils/phone.test.ts72L
-rw-r--r--packages/taler-merchant-webui/src/utils/phone.ts119L
-rw-r--r--packages/taler-merchant-webui/src/utils/print.test.ts82L
-rw-r--r--packages/taler-merchant-webui/src/utils/print.ts62L
-rw-r--r--packages/taler-merchant-webui/src/utils/runtimeValidation.ts19L
-rw-r--r--packages/taler-merchant-webui/src/utils/tan.ts66L
-rw-r--r--packages/taler-merchant-webui/src/utils/templates.ts198L
-rw-r--r--packages/taler-merchant-webui/src/utils/tokenSemantics.test.ts893L
-rw-r--r--packages/taler-merchant-webui/src/utils/tokenSemantics.ts886L
-rw-r--r--packages/taler-merchant-webui/src/utils/useClipboard.test.tsx172L
-rw-r--r--packages/taler-merchant-webui/src/utils/useClipboard.ts107L
-rw-r--r--packages/taler-merchant-webui/src/utils/useTableFilter.ts49L
-rw-r--r--packages/taler-merchant-webui/src/version.ts18L
-rw-r--r--packages/taler-merchant-webui/tailwind.config.js66L
-rwxr-xr-xpackages/taler-merchant-webui/test.mjs57L
-rw-r--r--packages/taler-merchant-webui/tsconfig.json40L
-rw-r--r--packages/taler-merchant-webui/tsconfig.test.json11L
-rw-r--r--packages/taler-merchant-webui/visual/README.md27L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-empty-desktop.aria.yml73L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-empty-desktop.webp15314B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-kyc-swapped-information.aria.yml184L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-kyc-swapped-information.webp32514B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-kyc-swapped-ready.aria.yml173L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-kyc-swapped-ready.webp30942B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-kyc-swapped-terms.aria.yml167L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-kyc-swapped-terms.webp28772B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-kyc-swapped-validation.aria.yml167L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-kyc-swapped-validation.webp29466B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-populated-desktop.aria.yml173L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-populated-desktop.webp30148B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-populated-mobile-de.aria.yml179L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/accounts-populated-mobile-de.webp25878B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-basic-desktop.aria.yml139L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-basic-desktop.webp19758B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-category-rules-empty-desktop.aria.yml187L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-category-rules-empty-desktop.webp27548B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-custom-item-desktop.aria.yml189L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-custom-item-desktop.webp27860B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-token-effects-desktop.aria.yml262L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-token-effects-desktop.webp32806B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-token-review-desktop.aria.yml477L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-token-review-desktop.webp48754B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-token-review-mobile.aria.yml523L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-token-review-mobile.webp21092B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-token-warning-desktop.aria.yml150L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/create-order-token-warning-desktop.webp24324B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/kyc-instructions-desktop.aria.yml233L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/kyc-instructions-desktop.webp57270B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/kyc-instructions-mobile.aria.yml275L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/kyc-instructions-mobile.webp28482B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/kyc-swapped-terms-desktop.aria.yml74L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/kyc-swapped-terms-desktop.webp22004B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/kyc-swapped-terms-mobile.aria.yml96L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/kyc-swapped-terms-mobile.webp22602B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/merchant-account-desktop.aria.yml267L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/merchant-account-desktop.webp30932B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/merchant-account-mobile.aria.yml348L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/merchant-account-mobile.webp22332B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/merchant-account-password-desktop.aria.yml318L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/merchant-account-password-desktop.webp39282B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/order-timeline-desktop.aria.yml238L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/order-timeline-desktop.webp26016B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/order-timeline-mobile.aria.yml258L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/order-timeline-mobile.webp19824B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/setup-desktop-de.aria.yml220L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/setup-desktop-de.webp41184B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/signup-desktop.aria.yml259L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/signup-desktop.webp33482B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/signup-required-desktop.aria.yml275L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/signup-required-desktop.webp33912B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/template-details-desktop.aria.yml214L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/template-details-desktop.webp34036B
-rw-r--r--packages/taler-merchant-webui/visual/baselines/template-print-preview-desktop.aria.yml48L
-rw-r--r--packages/taler-merchant-webui/visual/baselines/template-print-preview-desktop.webp34526B
-rw-r--r--packages/taler-merchant-webui/visual/run.mjs383L
-rw-r--r--packages/taler-merchant-webui/visual/scenarios.mjs217L
-rw-r--r--packages/taler-util/.prettierignore4L
-rw-r--r--packages/taler-util/Makefile42L
-rw-r--r--packages/taler-util/README.md10L
-rw-r--r--packages/taler-util/package.json98L
-rw-r--r--packages/taler-util/src/CancellationToken.test.ts38L
-rw-r--r--packages/taler-util/src/CancellationToken.ts304L
-rw-r--r--packages/taler-util/src/RequestThrottler.ts152L
-rw-r--r--packages/taler-util/src/ReserveStatus.ts74L
-rw-r--r--packages/taler-util/src/TaskThrottler.ts164L
-rw-r--r--packages/taler-util/src/account-restrictions.test.ts96L
-rw-r--r--packages/taler-util/src/account-restrictions.ts77L
-rw-r--r--packages/taler-util/src/aml/events.ts529L
-rw-r--r--packages/taler-util/src/aml/properties.test.ts111L
-rw-r--r--packages/taler-util/src/aml/properties.ts239L
-rw-r--r--packages/taler-util/src/aml/reporting.test.ts35L
-rw-r--r--packages/taler-util/src/aml/reporting.ts495L
-rw-r--r--packages/taler-util/src/amounts.test.ts519L
-rw-r--r--packages/taler-util/src/amounts.ts975L
-rw-r--r--packages/taler-util/src/argon2-impl.missing.ts9L
-rw-r--r--packages/taler-util/src/argon2-impl.wasm.ts19L
-rw-r--r--packages/taler-util/src/argon2.ts17L
-rw-r--r--packages/taler-util/src/bank-api-client.ts332L
-rw-r--r--packages/taler-util/src/base64.ts75L
-rw-r--r--packages/taler-util/src/bech32.ts200L
-rw-r--r--packages/taler-util/src/bitcoin.test.ts178L
-rw-r--r--packages/taler-util/src/bitcoin.ts88L
-rw-r--r--packages/taler-util/src/cache.ts84L
-rw-r--r--packages/taler-util/src/clk.test.ts437L
-rw-r--r--packages/taler-util/src/clk.ts942L
-rw-r--r--packages/taler-util/src/codec-object-fields.test.ts38L
-rw-r--r--packages/taler-util/src/codec.test.ts207L
-rw-r--r--packages/taler-util/src/codec.ts770L
-rw-r--r--packages/taler-util/src/compat.d.ts24L
-rw-r--r--packages/taler-util/src/compat.missing.ts67L
-rw-r--r--packages/taler-util/src/compat.node.ts68L
-rw-r--r--packages/taler-util/src/compat.qtart.ts62L
-rw-r--r--packages/taler-util/src/contract-terms.test.ts127L
-rw-r--r--packages/taler-util/src/contract-terms.ts317L
-rw-r--r--packages/taler-util/src/crypto-platform.fallback.ts131L
-rw-r--r--packages/taler-util/src/crypto-platform.node.ts202L
-rw-r--r--packages/taler-util/src/crypto-platform.test.ts296L
-rw-r--r--packages/taler-util/src/errors.ts496L
-rw-r--r--packages/taler-util/src/fnutils.ts38L
-rw-r--r--packages/taler-util/src/globbing/balanced-match.ts93L
-rw-r--r--packages/taler-util/src/globbing/brace-expansion.ts249L
-rw-r--r--packages/taler-util/src/globbing/minimatch.ts988L
-rw-r--r--packages/taler-util/src/helpers.test.ts74L
-rw-r--r--packages/taler-util/src/helpers.ts121L
-rw-r--r--packages/taler-util/src/http-client/README.md42L
-rw-r--r--packages/taler-util/src/http-client/accept-header.test.ts50L
-rw-r--r--packages/taler-util/src/http-client/aml-accounts.test.ts106L
-rw-r--r--packages/taler-util/src/http-client/aml-wallet-credit.test.ts82L
-rw-r--r--packages/taler-util/src/http-client/bank-conversion.ts264L
-rw-r--r--packages/taler-util/src/http-client/bank-core.test.ts69L
-rw-r--r--packages/taler-util/src/http-client/bank-core.ts1573L
-rw-r--r--packages/taler-util/src/http-client/bank-integration.ts236L
-rw-r--r--packages/taler-util/src/http-client/bank-prepared.ts143L
-rw-r--r--packages/taler-util/src/http-client/bank-revenue.ts122L
-rw-r--r--packages/taler-util/src/http-client/bank-wire.ts357L
-rw-r--r--packages/taler-util/src/http-client/challenger.test.ts154L
-rw-r--r--packages/taler-util/src/http-client/challenger.ts349L
-rw-r--r--packages/taler-util/src/http-client/donau-client.test.ts59L
-rw-r--r--packages/taler-util/src/http-client/donau-client.ts384L
-rw-r--r--packages/taler-util/src/http-client/exchange-client.ts2176L
-rw-r--r--packages/taler-util/src/http-client/exchange-keys.test.ts92L
-rw-r--r--packages/taler-util/src/http-client/exchange-refund.test.ts44L
-rw-r--r--packages/taler-util/src/http-client/exchange-reserve-close.test.ts44L
-rw-r--r--packages/taler-util/src/http-client/exchange-track-deposit.test.ts76L
-rw-r--r--packages/taler-util/src/http-client/mailbox.ts336L
-rw-r--r--packages/taler-util/src/http-client/merchant-abort.test.ts57L
-rw-r--r--packages/taler-util/src/http-client/merchant-management.test.ts265L
-rw-r--r--packages/taler-util/src/http-client/merchant.ts4406L
-rw-r--r--packages/taler-util/src/http-client/officer-account.ts152L
-rw-r--r--packages/taler-util/src/http-client/path-escaping.test.ts152L
-rw-r--r--packages/taler-util/src/http-client/status-handling.test.ts171L
-rw-r--r--packages/taler-util/src/http-client/taldir.ts224L
-rw-r--r--packages/taler-util/src/http-client/utils.ts107L
-rw-r--r--packages/taler-util/src/http-common.test.ts141L
-rw-r--r--packages/taler-util/src/http-common.ts862L
-rw-r--r--packages/taler-util/src/http-fake.test.ts108L
-rw-r--r--packages/taler-util/src/http-fake.ts149L
-rw-r--r--packages/taler-util/src/http-impl.missing.ts31L
-rw-r--r--packages/taler-util/src/http-impl.node.test.ts76L
-rw-r--r--packages/taler-util/src/http-impl.node.ts223L
-rw-r--r--packages/taler-util/src/http-impl.qtart.ts112L
-rw-r--r--packages/taler-util/src/http-native-request.test.ts150L
-rw-r--r--packages/taler-util/src/http-status-codes.ts384L
-rw-r--r--packages/taler-util/src/http.ts37L
-rw-r--r--packages/taler-util/src/i18n.test.ts113L
-rw-r--r--packages/taler-util/src/i18n.ts253L
-rw-r--r--packages/taler-util/src/iban.test.ts80L
-rw-r--r--packages/taler-util/src/iban.ts370L
-rw-r--r--packages/taler-util/src/index.browser.ts25L
-rw-r--r--packages/taler-util/src/index.node.ts24L
-rw-r--r--packages/taler-util/src/index.qtart.ts28L
-rw-r--r--packages/taler-util/src/index.ts113L
-rw-r--r--packages/taler-util/src/invariants.ts75L
-rw-r--r--packages/taler-util/src/iso-3166.ts594L
-rw-r--r--packages/taler-util/src/kdf.ts29L
-rw-r--r--packages/taler-util/src/libtool-version.test.ts83L
-rw-r--r--packages/taler-util/src/libtool-version.ts108L
-rw-r--r--packages/taler-util/src/logging.test.ts79L
-rw-r--r--packages/taler-util/src/logging.ts339L
-rw-r--r--packages/taler-util/src/longpoll-queue.ts97L
-rw-r--r--packages/taler-util/src/merchant-identifiers.test.ts36L
-rw-r--r--packages/taler-util/src/merchant-identifiers.ts34L
-rw-r--r--packages/taler-util/src/merchant-payout.test.ts26L
-rw-r--r--packages/taler-util/src/merchant-payout.ts17L
-rw-r--r--packages/taler-util/src/merchant-pos.test.ts23L
-rw-r--r--packages/taler-util/src/merchant-pos.ts62L
-rw-r--r--packages/taler-util/src/module-isolation.test.ts26L
-rw-r--r--packages/taler-util/src/notifications.ts425L
-rw-r--r--packages/taler-util/src/observability.test.ts80L
-rw-r--r--packages/taler-util/src/observability.ts109L
-rw-r--r--packages/taler-util/src/operation.test.ts52L
-rw-r--r--packages/taler-util/src/operation.ts359L
-rw-r--r--packages/taler-util/src/payto-xtalerbank.test.ts72L
-rw-r--r--packages/taler-util/src/payto.test.ts434L
-rw-r--r--packages/taler-util/src/payto.ts1180L
-rw-r--r--packages/taler-util/src/performance.test.ts44L
-rw-r--r--packages/taler-util/src/performance.ts270L
-rw-r--r--packages/taler-util/src/prng-browser.test.ts60L
-rw-r--r--packages/taler-util/src/prng-browser.ts27L
-rw-r--r--packages/taler-util/src/prng-node.ts31L
-rw-r--r--packages/taler-util/src/prng.ts28L
-rw-r--r--packages/taler-util/src/promises.ts114L
-rw-r--r--packages/taler-util/src/punycode.ts467L
-rw-r--r--packages/taler-util/src/qr.test.ts65L
-rw-r--r--packages/taler-util/src/qr.ts201L
-rw-r--r--packages/taler-util/src/qtart.missing.ts35L
-rw-r--r--packages/taler-util/src/qtart.ts79L
-rw-r--r--packages/taler-util/src/result.ts72L
-rw-r--r--packages/taler-util/src/rfc3548.test.ts45L
-rw-r--r--packages/taler-util/src/rfc3548.ts79L
-rw-r--r--packages/taler-util/src/scope-info.test.ts111L
-rw-r--r--packages/taler-util/src/segwit_addr.test.ts76L
-rw-r--r--packages/taler-util/src/segwit_addr.ts122L
-rw-r--r--packages/taler-util/src/sha256.ts283L
-rw-r--r--packages/taler-util/src/taler-account-properties.ts134L
-rw-r--r--packages/taler-util/src/taler-crypto.test.ts810L
-rw-r--r--packages/taler-util/src/taler-crypto.ts2263L
-rw-r--r--packages/taler-util/src/taler-error-codes.ts5512L
-rw-r--r--packages/taler-util/src/taler-form-attributes.ts887L
-rw-r--r--packages/taler-util/src/taler-signatures.ts101L
-rw-r--r--packages/taler-util/src/taler_signatures.ts429L
-rw-r--r--packages/taler-util/src/talerconfig.test.ts454L
-rw-r--r--packages/taler-util/src/talerconfig.ts1056L
-rw-r--r--packages/taler-util/src/taleruri-roundtrip.test.ts101L
-rw-r--r--packages/taler-util/src/taleruri.test.ts836L
-rw-r--r--packages/taler-util/src/taleruri.ts1260L
-rw-r--r--packages/taler-util/src/taleruris.test.ts710L
-rw-r--r--packages/taler-util/src/tan.test.ts41L
-rw-r--r--packages/taler-util/src/tan.ts46L
-rw-r--r--packages/taler-util/src/time.test.ts226L
-rw-r--r--packages/taler-util/src/time.ts1114L
-rw-r--r--packages/taler-util/src/timer.test.ts96L
-rw-r--r--packages/taler-util/src/timer.ts252L
-rw-r--r--packages/taler-util/src/transaction-test-data.ts119L
-rw-r--r--packages/taler-util/src/twrpc-impl.missing.ts26L
-rw-r--r--packages/taler-util/src/twrpc-impl.node.ts218L
-rw-r--r--packages/taler-util/src/twrpc-impl.qtart.ts26L
-rw-r--r--packages/taler-util/src/twrpc.ts61L
-rw-r--r--packages/taler-util/src/type-override.d.ts32L
-rw-r--r--packages/taler-util/src/types-donau.test.ts106L
-rw-r--r--packages/taler-util/src/types-donau.ts431L
-rw-r--r--packages/taler-util/src/types-taler-bank-conversion.ts207L
-rw-r--r--packages/taler-util/src/types-taler-bank-integration.ts201L
-rw-r--r--packages/taler-util/src/types-taler-challenger.ts317L
-rw-r--r--packages/taler-util/src/types-taler-common.test.ts183L
-rw-r--r--packages/taler-util/src/types-taler-common.ts540L
-rw-r--r--packages/taler-util/src/types-taler-corebank.ts1074L
-rw-r--r--packages/taler-util/src/types-taler-directory.ts78L
-rw-r--r--packages/taler-util/src/types-taler-exchange.test.ts393L
-rw-r--r--packages/taler-util/src/types-taler-exchange.ts3187L
-rw-r--r--packages/taler-util/src/types-taler-kyc-aml.ts191L
-rw-r--r--packages/taler-util/src/types-taler-mailbox.ts163L
-rw-r--r--packages/taler-util/src/types-taler-merchant.test.ts158L
-rw-r--r--packages/taler-util/src/types-taler-merchant.ts5811L
-rw-r--r--packages/taler-util/src/types-taler-prepared-transfer.ts193L
-rw-r--r--packages/taler-util/src/types-taler-revenue.ts103L
-rw-r--r--packages/taler-util/src/types-taler-wallet-transactions.ts1090L
-rw-r--r--packages/taler-util/src/types-taler-wallet.test.ts207L
-rw-r--r--packages/taler-util/src/types-taler-wallet.ts4941L
-rw-r--r--packages/taler-util/src/types-taler-wire-gateway.ts516L
-rw-r--r--packages/taler-util/src/types.test.ts108L
-rw-r--r--packages/taler-util/src/url.ts110L
-rw-r--r--packages/taler-util/src/whatwg-url.test.ts130L
-rw-r--r--packages/taler-util/src/whatwg-url.ts2199L
-rw-r--r--packages/taler-util/src/xsalsa20poly1305.test.ts44L
-rw-r--r--packages/taler-util/src/xsalsa20poly1305.ts43L
-rw-r--r--packages/taler-util/src/yaml.test.ts51L
-rw-r--r--packages/taler-util/src/yaml.ts71L
-rw-r--r--packages/taler-util/tsconfig.json10L
-rw-r--r--packages/taler-wallet-cli/Makefile51L
-rw-r--r--packages/taler-wallet-cli/README.md18L
-rwxr-xr-xpackages/taler-wallet-cli/bin/taler-wallet-cli-local.mjs8L
-rwxr-xr-xpackages/taler-wallet-cli/bin/taler-wallet-cli.mjs19L
-rwxr-xr-xpackages/taler-wallet-cli/build-node.mjs66L
-rwxr-xr-xpackages/taler-wallet-cli/build-qtart.mjs65L
-rw-r--r--packages/taler-wallet-cli/debian/control17L
-rw-r--r--packages/taler-wallet-cli/debian/copyright699L
-rwxr-xr-xpackages/taler-wallet-cli/debian/rules19L
-rw-r--r--packages/taler-wallet-cli/package.json46L
-rw-r--r--packages/taler-wallet-cli/src/balance-pretty.test.ts114L
-rw-r--r--packages/taler-wallet-cli/src/balance-pretty.ts98L
-rw-r--r--packages/taler-wallet-cli/src/bank-accounts-pretty.test.ts61L
-rw-r--r--packages/taler-wallet-cli/src/bank-accounts-pretty.ts39L
-rw-r--r--packages/taler-wallet-cli/src/continuation.test.ts343L
-rw-r--r--packages/taler-wallet-cli/src/continuation.ts375L
-rw-r--r--packages/taler-wallet-cli/src/exchanges-pretty.test.ts101L
-rw-r--r--packages/taler-wallet-cli/src/exchanges-pretty.ts83L
-rw-r--r--packages/taler-wallet-cli/src/import-meta-url.js2L
-rw-r--r--packages/taler-wallet-cli/src/index.ts4398L
-rw-r--r--packages/taler-wallet-cli/src/marks.test.ts51L
-rw-r--r--packages/taler-wallet-cli/src/marks.ts65L
-rw-r--r--packages/taler-wallet-cli/src/paivana.test.ts61L
-rw-r--r--packages/taler-wallet-cli/src/paivana.ts54L
-rw-r--r--packages/taler-wallet-cli/src/transactions-pretty.test.ts123L
-rw-r--r--packages/taler-wallet-cli/src/transactions-pretty.ts198L
-rw-r--r--packages/taler-wallet-cli/src/txref.test.ts71L
-rw-r--r--packages/taler-wallet-cli/src/txref.ts80L
-rw-r--r--packages/taler-wallet-cli/src/waitspec.test.ts162L
-rw-r--r--packages/taler-wallet-cli/src/waitspec.ts227L
-rw-r--r--packages/taler-wallet-cli/tsconfig.json18L
-rw-r--r--packages/taler-wallet-core/.gitignore3L
-rw-r--r--packages/taler-wallet-core/README.md4L
-rw-r--r--packages/taler-wallet-core/package.json72L
-rw-r--r--packages/taler-wallet-core/src/auditorTrust.ts57L
-rw-r--r--packages/taler-wallet-core/src/balance.test.ts611L
-rw-r--r--packages/taler-wallet-core/src/balance.ts1393L
-rw-r--r--packages/taler-wallet-core/src/builtin-exchanges.ts76L
-rw-r--r--packages/taler-wallet-core/src/coinAvailability.test.ts276L
-rw-r--r--packages/taler-wallet-core/src/coinSelection.test.ts1833L
-rw-r--r--packages/taler-wallet-core/src/coinSelection.ts2916L
-rw-r--r--packages/taler-wallet-core/src/common.test.ts97L
-rw-r--r--packages/taler-wallet-core/src/common.ts1297L
-rw-r--r--packages/taler-wallet-core/src/contacts.ts102L
-rw-r--r--packages/taler-wallet-core/src/crypto/cryptoImplementation.test.ts715L
-rw-r--r--packages/taler-wallet-core/src/crypto/cryptoImplementation.ts3222L
-rw-r--r--packages/taler-wallet-core/src/crypto/cryptoTypes.ts486L
-rw-r--r--packages/taler-wallet-core/src/crypto/index.ts25L
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/crypto-dispatcher.test.ts217L
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/crypto-dispatcher.ts458L
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/cryptoWorkerInterface.ts73L
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/nodeThreadWorker.test.ts32L
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/nodeThreadWorker.ts147L
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/synchronousWorkerFactoryPlain.ts36L
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/synchronousWorkerPlain.ts98L
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/worker-common.test.ts60L
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/worker-common.ts110L
-rw-r--r--packages/taler-wallet-core/src/db/handle.ts180L
-rw-r--r--packages/taler-wallet-core/src/db/indexeddb/database.test.ts273L
-rw-r--r--packages/taler-wallet-core/src/db/indexeddb/database.ts551L
-rw-r--r--packages/taler-wallet-core/src/db/indexeddb/dump.ts238L
-rw-r--r--packages/taler-wallet-core/src/db/indexeddb/fixups.ts1154L
-rw-r--r--packages/taler-wallet-core/src/db/indexeddb/handle.ts417L
-rw-r--r--packages/taler-wallet-core/src/db/indexeddb/schema.ts1272L
-rw-r--r--packages/taler-wallet-core/src/db/indexeddb/transaction.ts2243L
-rw-r--r--packages/taler-wallet-core/src/db/migration/converter.test.ts1409L
-rw-r--r--packages/taler-wallet-core/src/db/migration/converter.ts862L
-rw-r--r--packages/taler-wallet-core/src/db/migration/import.test.ts216L
-rw-r--r--packages/taler-wallet-core/src/db/migration/import.ts260L
-rw-r--r--packages/taler-wallet-core/src/db/migration/native.test.ts1145L
-rw-r--r--packages/taler-wallet-core/src/db/migration/native.ts733L
-rw-r--r--packages/taler-wallet-core/src/db/query-sqlite-error-recovery.test.ts157L
-rw-r--r--packages/taler-wallet-core/src/db/query.ts995L
-rw-r--r--packages/taler-wallet-core/src/db/records.ts3019L
-rw-r--r--packages/taler-wallet-core/src/db/shared-cache-invalidation.test.ts234L
-rw-r--r--packages/taler-wallet-core/src/db/shared.ts217L
-rw-r--r--packages/taler-wallet-core/src/db/sqlite/database.ts679L
-rw-r--r--packages/taler-wallet-core/src/db/sqlite/handle.ts137L
-rw-r--r--packages/taler-wallet-core/src/db/sqlite/schema-migrations.test.ts604L
-rw-r--r--packages/taler-wallet-core/src/db/sqlite/schema.ts1422L
-rw-r--r--packages/taler-wallet-core/src/db/sqlite/transaction.test.ts219L
-rw-r--r--packages/taler-wallet-core/src/db/sqlite/transaction.ts5404L
-rw-r--r--packages/taler-wallet-core/src/db/testing/benchmark.test.ts51L
-rw-r--r--packages/taler-wallet-core/src/db/testing/benchmark.ts906L
-rw-r--r--packages/taler-wallet-core/src/db/testing/conformance-cases.ts4279L
-rw-r--r--packages/taler-wallet-core/src/db/testing/conformance.test.ts188L
-rw-r--r--packages/taler-wallet-core/src/db/testing/conformance.ts61L
-rw-r--r--packages/taler-wallet-core/src/db/testing/runners.ts79L
-rw-r--r--packages/taler-wallet-core/src/db/timestamps.test.ts44L
-rw-r--r--packages/taler-wallet-core/src/db/timestamps.ts95L
-rw-r--r--packages/taler-wallet-core/src/db/transaction.ts1312L
-rw-r--r--packages/taler-wallet-core/src/dbless.test.ts77L
-rw-r--r--packages/taler-wallet-core/src/dbless.ts536L
-rw-r--r--packages/taler-wallet-core/src/dbtx-browser-wasm.test.ts60L
-rw-r--r--packages/taler-wallet-core/src/denomSelection.ts262L
-rw-r--r--packages/taler-wallet-core/src/denominations.test.ts973L
-rw-r--r--packages/taler-wallet-core/src/denominations.ts522L
-rw-r--r--packages/taler-wallet-core/src/deposits-performance.test.ts85L
-rw-r--r--packages/taler-wallet-core/src/deposits.test.ts254L
-rw-r--r--packages/taler-wallet-core/src/deposits.ts3097L
-rw-r--r--packages/taler-wallet-core/src/dev-experiments.test.ts338L
-rw-r--r--packages/taler-wallet-core/src/dev-experiments.ts1249L
-rw-r--r--packages/taler-wallet-core/src/diagnostics.test.ts136L
-rw-r--r--packages/taler-wallet-core/src/diagnostics.ts438L
-rw-r--r--packages/taler-wallet-core/src/donau.test.ts142L
-rw-r--r--packages/taler-wallet-core/src/donau.ts702L
-rw-r--r--packages/taler-wallet-core/src/exchange-base-url.test.ts242L
-rw-r--r--packages/taler-wallet-core/src/exchange-base-url.ts329L
-rw-r--r--packages/taler-wallet-core/src/exchange-master-pub.test.ts236L
-rw-r--r--packages/taler-wallet-core/src/exchange-payto.ts57L
-rw-r--r--packages/taler-wallet-core/src/exchange-signatures.test.ts265L
-rw-r--r--packages/taler-wallet-core/src/exchange-signatures.ts347L
-rw-r--r--packages/taler-wallet-core/src/exchanges.test.ts265L
-rw-r--r--packages/taler-wallet-core/src/exchanges.ts5740L
-rw-r--r--packages/taler-wallet-core/src/host-common.ts123L
-rw-r--r--packages/taler-wallet-core/src/host-impl.missing.ts40L
-rw-r--r--packages/taler-wallet-core/src/host-impl.node.ts441L
-rw-r--r--packages/taler-wallet-core/src/host-impl.qtart.test.ts49L
-rw-r--r--packages/taler-wallet-core/src/host-impl.qtart.ts440L
-rw-r--r--packages/taler-wallet-core/src/host.ts34L
-rw-r--r--packages/taler-wallet-core/src/http-injection.test.ts157L
-rw-r--r--packages/taler-wallet-core/src/index.browser.ts18L
-rw-r--r--packages/taler-wallet-core/src/index.node.ts41L
-rw-r--r--packages/taler-wallet-core/src/index.ts68L
-rw-r--r--packages/taler-wallet-core/src/instructedAmountConversion.test.ts661L
-rw-r--r--packages/taler-wallet-core/src/instructedAmountConversion.ts776L
-rw-r--r--packages/taler-wallet-core/src/kyc.test.ts183L
-rw-r--r--packages/taler-wallet-core/src/kyc.ts544L
-rw-r--r--packages/taler-wallet-core/src/mailbox.test.ts55L
-rw-r--r--packages/taler-wallet-core/src/mailbox.ts514L
-rw-r--r--packages/taler-wallet-core/src/maintenance-notifications.test.ts153L
-rw-r--r--packages/taler-wallet-core/src/maintenance-notifications.ts102L
-rw-r--r--packages/taler-wallet-core/src/observable-wrappers.ts159L
-rw-r--r--packages/taler-wallet-core/src/pay-merchant.test.ts925L
-rw-r--r--packages/taler-wallet-core/src/pay-merchant.ts6262L
-rw-r--r--packages/taler-wallet-core/src/pay-paivana.test.ts191L
-rw-r--r--packages/taler-wallet-core/src/pay-paivana.ts438L
-rw-r--r--packages/taler-wallet-core/src/pay-peer-common.ts208L
-rw-r--r--packages/taler-wallet-core/src/pay-peer-pull-credit.test.ts179L
-rw-r--r--packages/taler-wallet-core/src/pay-peer-pull-credit.ts1716L
-rw-r--r--packages/taler-wallet-core/src/pay-peer-pull-debit.test.ts113L
-rw-r--r--packages/taler-wallet-core/src/pay-peer-pull-debit.ts1897L
-rw-r--r--packages/taler-wallet-core/src/pay-peer-push-credit.test.ts72L
-rw-r--r--packages/taler-wallet-core/src/pay-peer-push-credit.ts1880L
-rw-r--r--packages/taler-wallet-core/src/pay-peer-push-debit.test.ts187L
-rw-r--r--packages/taler-wallet-core/src/pay-peer-push-debit.ts1742L
-rw-r--r--packages/taler-wallet-core/src/pay-template.test.ts145L
-rw-r--r--packages/taler-wallet-core/src/pay-template.ts345L
-rw-r--r--packages/taler-wallet-core/src/preset-exchanges.ts80L
-rw-r--r--packages/taler-wallet-core/src/progress.ts270L
-rw-r--r--packages/taler-wallet-core/src/recoup.test.ts32L
-rw-r--r--packages/taler-wallet-core/src/recoup.ts579L
-rw-r--r--packages/taler-wallet-core/src/refresh.test.ts180L
-rw-r--r--packages/taler-wallet-core/src/refresh.ts2283L
-rw-r--r--packages/taler-wallet-core/src/remote.test.ts47L
-rw-r--r--packages/taler-wallet-core/src/remote.ts246L
-rw-r--r--packages/taler-wallet-core/src/requests.test.ts958L
-rw-r--r--packages/taler-wallet-core/src/requests.ts3139L
-rw-r--r--packages/taler-wallet-core/src/shepherd.ts1358L
-rw-r--r--packages/taler-wallet-core/src/taldir.ts204L
-rw-r--r--packages/taler-wallet-core/src/task-run-limiter.test.ts254L
-rw-r--r--packages/taler-wallet-core/src/task-run-limiter.ts154L
-rw-r--r--packages/taler-wallet-core/src/testing.ts1055L
-rw-r--r--packages/taler-wallet-core/src/tokenFamilies.ts254L
-rw-r--r--packages/taler-wallet-core/src/tokenSelection.test.ts251L
-rw-r--r--packages/taler-wallet-core/src/tokenSelection.ts401L
-rw-r--r--packages/taler-wallet-core/src/transactions.test.ts160L
-rw-r--r--packages/taler-wallet-core/src/transactions.ts1243L
-rw-r--r--packages/taler-wallet-core/src/versions.ts80L
-rw-r--r--packages/taler-wallet-core/src/wallet-api-types.test.ts48L
-rw-r--r--packages/taler-wallet-core/src/wallet-api-types.ts2242L
-rw-r--r--packages/taler-wallet-core/src/wallet-db-gate.test.ts276L
-rw-r--r--packages/taler-wallet-core/src/wallet.ts1849L
-rw-r--r--packages/taler-wallet-core/src/withdraw.test.ts498L
-rw-r--r--packages/taler-wallet-core/src/withdraw.ts4937L
-rw-r--r--packages/taler-wallet-core/tsconfig.json25L
-rwxr-xr-xpackages/taler-wallet-core/watch_test.sh3L
-rw-r--r--packages/taler-wallet-embedded/README.md4L
-rwxr-xr-xpackages/taler-wallet-embedded/build.mjs67L
-rw-r--r--packages/taler-wallet-embedded/package.json43L
-rw-r--r--packages/taler-wallet-embedded/src/wallet-qjs-tests.ts122L
-rw-r--r--packages/taler-wallet-embedded/src/wallet-qjs.ts280L
-rw-r--r--packages/taler-wallet-embedded/tsconfig.json20L
-rw-r--r--packages/wallet-webui/Makefile31L
-rw-r--r--packages/wallet-webui/README.md84L
-rwxr-xr-xpackages/wallet-webui/build-harness.mjs59L
-rw-r--r--packages/wallet-webui/build.mjs371L
-rw-r--r--packages/wallet-webui/bundle-budget.d.mts6L
-rw-r--r--packages/wallet-webui/bundle-budget.mjs9L
-rw-r--r--packages/wallet-webui/dev.mjs163L
-rw-r--r--packages/wallet-webui/manifest.d.mts6L
-rw-r--r--packages/wallet-webui/manifest.mjs66L
-rw-r--r--packages/wallet-webui/pack.d.mts21L
-rw-r--r--packages/wallet-webui/pack.mjs227L
-rw-r--r--packages/wallet-webui/package.json68L
-rw-r--r--packages/wallet-webui/src/api/balance-history.ts165L
-rw-r--r--packages/wallet-webui/src/api/canonical.ts21L
-rw-r--r--packages/wallet-webui/src/api/contracts.ts147L
-rw-r--r--packages/wallet-webui/src/api/notifications.ts88L
-rw-r--r--packages/wallet-webui/src/api/progress.ts367L
-rw-r--r--packages/wallet-webui/src/api/rpc.ts237L
-rw-r--r--packages/wallet-webui/src/api/storage-control.ts115L
-rw-r--r--packages/wallet-webui/src/api/wallet.ts45L
-rw-r--r--packages/wallet-webui/src/custom.d.ts9L
-rw-r--r--packages/wallet-webui/src/demo-entry.tsx12L
-rw-r--r--packages/wallet-webui/src/extension-entry.tsx27L
-rw-r--r--packages/wallet-webui/src/i18n/LanguageProvider.tsx73L
-rw-r--r--packages/wallet-webui/src/i18n/de.po5968L
-rw-r--r--packages/wallet-webui/src/i18n/fr.po5978L
-rw-r--r--packages/wallet-webui/src/i18n/it.po5952L
-rw-r--r--packages/wallet-webui/src/i18n/runtime.ts183L
-rw-r--r--packages/wallet-webui/src/i18n/strings-prelude2L
-rw-r--r--packages/wallet-webui/src/i18n/strings.ts7190L
-rw-r--r--packages/wallet-webui/src/i18n/taler-wallet-webui.pot5561L
-rw-r--r--packages/wallet-webui/src/platform/action-inbox.ts227L
-rw-r--r--packages/wallet-webui/src/platform/adapters.ts257L
-rw-r--r--packages/wallet-webui/src/platform/balance-preference.ts75L
-rw-r--r--packages/wallet-webui/src/platform/browser-generation-provider.ts151L
-rw-r--r--packages/wallet-webui/src/platform/browser-http.ts68L
-rw-r--r--packages/wallet-webui/src/platform/content-script.ts158L
-rw-r--r--packages/wallet-webui/src/platform/durability.tsx249L
-rw-r--r--packages/wallet-webui/src/platform/extension-background.ts297L
-rw-r--r--packages/wallet-webui/src/platform/integration-settings.ts97L
-rw-r--r--packages/wallet-webui/src/platform/lifecycle.ts87L
-rw-r--r--packages/wallet-webui/src/platform/link-navigation.ts27L
-rw-r--r--packages/wallet-webui/src/platform/manifests.ts5L
-rw-r--r--packages/wallet-webui/src/platform/page-integration.ts132L
-rw-r--r--packages/wallet-webui/src/platform/pwa-location.ts40L
-rw-r--r--packages/wallet-webui/src/platform/pwa-update-messages.ts18L
-rw-r--r--packages/wallet-webui/src/platform/pwa-update.ts54L
-rw-r--r--packages/wallet-webui/src/platform/service-worker.ts97L
-rw-r--r--packages/wallet-webui/src/platform/sqlite-runtime-disabled.ts7L
-rw-r--r--packages/wallet-webui/src/platform/sqlite-runtime.ts35L
-rw-r--r--packages/wallet-webui/src/platform/storage-manager.ts388L
-rw-r--r--packages/wallet-webui/src/platform/storage-migration.ts186L
-rw-r--r--packages/wallet-webui/src/platform/storage-recovery.ts71L
-rw-r--r--packages/wallet-webui/src/platform/wallet-host.ts78L
-rw-r--r--packages/wallet-webui/src/platform/worker-transport.ts257L
-rw-r--r--packages/wallet-webui/src/popup-entry.tsx16L
-rw-r--r--packages/wallet-webui/src/pwa-entry.tsx52L
-rw-r--r--packages/wallet-webui/src/routes/App.tsx5604L
-rw-r--r--packages/wallet-webui/src/routes/ManagementRoutes.tsx646L
-rw-r--r--packages/wallet-webui/src/routes/Popup.tsx72L
-rw-r--r--packages/wallet-webui/src/routes/action-model.ts47L
-rw-r--r--packages/wallet-webui/src/routes/balance-model.ts276L
-rw-r--r--packages/wallet-webui/src/routes/context.ts36L
-rw-r--r--packages/wallet-webui/src/routes/deposit-model.ts103L
-rw-r--r--packages/wallet-webui/src/routes/exchange-gate-model.ts67L
-rw-r--r--packages/wallet-webui/src/routes/import-model.ts90L
-rw-r--r--packages/wallet-webui/src/routes/management-model.ts272L
-rw-r--r--packages/wallet-webui/src/routes/money-flow-model.ts126L
-rw-r--r--packages/wallet-webui/src/routes/order-model.ts106L
-rw-r--r--packages/wallet-webui/src/routes/payment-model.ts317L
-rw-r--r--packages/wallet-webui/src/routes/scope-model.ts80L
-rw-r--r--packages/wallet-webui/src/routes/token-model.ts106L
-rw-r--r--packages/wallet-webui/src/routes/transaction-model.ts815L
-rw-r--r--packages/wallet-webui/src/routes/withdrawal-model.ts378L
-rw-r--r--packages/wallet-webui/src/routes/withdrawal-review-model.ts78L
-rw-r--r--packages/wallet-webui/src/screens/ActionScreen.tsx171L
-rw-r--r--packages/wallet-webui/src/screens/BalanceScreen.tsx967L
-rw-r--r--packages/wallet-webui/src/screens/BankAccountsScreen.tsx572L
-rw-r--r--packages/wallet-webui/src/screens/BankConfirmationScreen.tsx96L
-rw-r--r--packages/wallet-webui/src/screens/DepositScreen.tsx345L
-rw-r--r--packages/wallet-webui/src/screens/DonauSettingsScreen.tsx190L
-rw-r--r--packages/wallet-webui/src/screens/DonauStatementsScreen.tsx128L
-rw-r--r--packages/wallet-webui/src/screens/ExchangeDetailScreen.tsx293L
-rw-r--r--packages/wallet-webui/src/screens/ExchangesScreen.tsx125L
-rw-r--r--packages/wallet-webui/src/screens/ImportRecoveryScreen.tsx165L
-rw-r--r--packages/wallet-webui/src/screens/PaymentScreen.tsx736L
-rw-r--r--packages/wallet-webui/src/screens/PaymentTemplateScreen.tsx156L
-rw-r--r--packages/wallet-webui/src/screens/PeerCreateScreen.tsx591L
-rw-r--r--packages/wallet-webui/src/screens/PeerReceiveScreen.tsx143L
-rw-r--r--packages/wallet-webui/src/screens/PeerShareScreen.tsx85L
-rw-r--r--packages/wallet-webui/src/screens/PopupScreen.tsx58L
-rw-r--r--packages/wallet-webui/src/screens/QrScannerScreen.tsx45L
-rw-r--r--packages/wallet-webui/src/screens/RecoveryScreen.tsx125L
-rw-r--r--packages/wallet-webui/src/screens/SettingsScreen.tsx697L
-rw-r--r--packages/wallet-webui/src/screens/ShoppingScreen.tsx56L
-rw-r--r--packages/wallet-webui/src/screens/StorageMigrationCard.tsx148L
-rw-r--r--packages/wallet-webui/src/screens/StorybookScreen.tsx1546L
-rw-r--r--packages/wallet-webui/src/screens/TermsScreen.tsx129L
-rw-r--r--packages/wallet-webui/src/screens/TokenListScreen.tsx121L
-rw-r--r--packages/wallet-webui/src/screens/TransactionDetailScreen.tsx389L
-rw-r--r--packages/wallet-webui/src/screens/TransactionScreen.tsx125L
-rw-r--r--packages/wallet-webui/src/screens/UriInputScreen.tsx86L
-rw-r--r--packages/wallet-webui/src/screens/WireTransferScreen.tsx365L
-rw-r--r--packages/wallet-webui/src/screens/WithdrawalReviewScreen.tsx130L
-rw-r--r--packages/wallet-webui/src/screens/WithdrawalScreen.tsx246L
-rw-r--r--packages/wallet-webui/src/stores/preferences.tsx85L
-rw-r--r--packages/wallet-webui/src/stores/ui.ts6L
-rw-r--r--packages/wallet-webui/src/stories/catalog.ts248L
-rw-r--r--packages/wallet-webui/src/stories/entry.tsx41L
-rw-r--r--packages/wallet-webui/src/styles/main.css155L
-rw-r--r--packages/wallet-webui/src/testing/demo-wallet.ts1349L
-rw-r--r--packages/wallet-webui/src/testing/extension-sqlite-bridge.ts134L
-rw-r--r--packages/wallet-webui/src/testing/extension-sqlite-chrome-background.ts52L
-rw-r--r--packages/wallet-webui/src/testing/extension-sqlite-firefox-background.ts20L
-rw-r--r--packages/wallet-webui/src/testing/extension-sqlite-offscreen.ts24L
-rw-r--r--packages/wallet-webui/src/testing/legacy-extension-background.ts40L
-rw-r--r--packages/wallet-webui/src/testing/sqlite-opfs-worker.ts297L
-rw-r--r--packages/wallet-webui/src/testing/storage-faults-disabled.ts18L
-rw-r--r--packages/wallet-webui/src/testing/storage-faults.ts89L
-rw-r--r--packages/wallet-webui/src/ui/Button.tsx27L
-rw-r--r--packages/wallet-webui/src/ui/Card.tsx11L
-rw-r--r--packages/wallet-webui/src/ui/ConfirmationDialog.tsx121L
-rw-r--r--packages/wallet-webui/src/ui/DemoBanner.tsx119L
-rw-r--r--packages/wallet-webui/src/ui/ErrorCard.tsx76L
-rw-r--r--packages/wallet-webui/src/ui/FocusedPage.tsx12L
-rw-r--r--packages/wallet-webui/src/ui/MoneyAmountInput.tsx29L
-rw-r--r--packages/wallet-webui/src/ui/OrderSummary.tsx90L
-rw-r--r--packages/wallet-webui/src/ui/OverflowMenu.tsx68L
-rw-r--r--packages/wallet-webui/src/ui/QrFrame.tsx72L
-rw-r--r--packages/wallet-webui/src/ui/RequestProgress.tsx85L
-rw-r--r--packages/wallet-webui/src/ui/Shell.tsx215L
-rw-r--r--packages/wallet-webui/src/ui/WalletBrand.tsx29L
-rw-r--r--packages/wallet-webui/src/ui/WalletIcon.CC0.md19L
-rw-r--r--packages/wallet-webui/src/ui/WalletIcon.tsx234L
-rw-r--r--packages/wallet-webui/src/ui/WalletUpdateBanner.tsx13L
-rw-r--r--packages/wallet-webui/src/ui/balance-history.ts11L
-rw-r--r--packages/wallet-webui/src/ui/error.ts176L
-rw-r--r--packages/wallet-webui/src/ui/exchange-label.ts38L
-rw-r--r--packages/wallet-webui/src/workers/wallet-worker.ts1400L
-rw-r--r--packages/wallet-webui/static/font/roboto-italic-400.ttf130872B
-rw-r--r--packages/wallet-webui/static/font/roboto-normal-400.ttf129584B
-rw-r--r--packages/wallet-webui/static/font/roboto-normal-500.ttf129768B
-rw-r--r--packages/wallet-webui/static/font/roboto-normal-700.ttf128676B
-rw-r--r--packages/wallet-webui/static/qr-logo.svg1L
-rw-r--r--packages/wallet-webui/static/taler-icon-128.png8941B
-rw-r--r--packages/wallet-webui/static/taler-icon-48.png2790B
-rw-r--r--packages/wallet-webui/static/taler-logo-dark.svg1L
-rw-r--r--packages/wallet-webui/static/taler-logo-light.svg1L
-rw-r--r--packages/wallet-webui/tailwind.config.mjs58L
-rwxr-xr-xpackages/wallet-webui/test-server.mjs87L
-rw-r--r--packages/wallet-webui/test/action-inbox.test.ts122L
-rw-r--r--packages/wallet-webui/test/action-model.test.ts76L
-rw-r--r--packages/wallet-webui/test/adapters.test.ts248L
-rw-r--r--packages/wallet-webui/test/balance-history.test.ts79L
-rw-r--r--packages/wallet-webui/test/balance-model.test.ts305L
-rw-r--r--packages/wallet-webui/test/browser-generation-provider.test.ts116L
-rw-r--r--packages/wallet-webui/test/browser-integration.test.ts254L
-rw-r--r--packages/wallet-webui/test/bundle-budget.test.ts27L
-rw-r--r--packages/wallet-webui/test/canonical.test.ts19L
-rw-r--r--packages/wallet-webui/test/check-screen-boundaries.mjs17L
-rw-r--r--packages/wallet-webui/test/demo-wallet.test.ts104L
-rw-r--r--packages/wallet-webui/test/deposit-model.test.ts100L
-rw-r--r--packages/wallet-webui/test/error-presentation.test.tsx158L
-rw-r--r--packages/wallet-webui/test/error.test.ts11L
-rw-r--r--packages/wallet-webui/test/i18n-catalog.test.ts189L
-rw-r--r--packages/wallet-webui/test/import-model.test.ts72L
-rw-r--r--packages/wallet-webui/test/language.test.tsx170L
-rw-r--r--packages/wallet-webui/test/lifecycle.test.ts146L
-rw-r--r--packages/wallet-webui/test/management-model.test.ts190L
-rw-r--r--packages/wallet-webui/test/manifests.test.ts128L
-rw-r--r--packages/wallet-webui/test/markdown.test.tsx229L
-rw-r--r--packages/wallet-webui/test/money-flow-model.test.ts100L
-rw-r--r--packages/wallet-webui/test/notifications.test.ts39L
-rw-r--r--packages/wallet-webui/test/order-model.test.ts59L
-rw-r--r--packages/wallet-webui/test/packaging.test.ts167L
-rw-r--r--packages/wallet-webui/test/payment-model.test.ts426L
-rw-r--r--packages/wallet-webui/test/preferences.test.tsx98L
-rw-r--r--packages/wallet-webui/test/progress.test.ts181L
-rw-r--r--packages/wallet-webui/test/pwa-lifecycle.test.ts47L
-rw-r--r--packages/wallet-webui/test/pwa-location.test.ts37L
-rw-r--r--packages/wallet-webui/test/pwa-update.test.tsx111L
-rw-r--r--packages/wallet-webui/test/routing.test.ts159L
-rw-r--r--packages/wallet-webui/test/rpc.test.ts69L
-rw-r--r--packages/wallet-webui/test/scope-model.test.ts82L
-rw-r--r--packages/wallet-webui/test/screens.test.tsx4165L
-rw-r--r--packages/wallet-webui/test/storage-control.test.ts183L
-rw-r--r--packages/wallet-webui/test/storage-manager.test.ts190L
-rw-r--r--packages/wallet-webui/test/storage-migration.test.ts264L
-rw-r--r--packages/wallet-webui/test/storage-recovery.test.ts73L
-rw-r--r--packages/wallet-webui/test/story-catalog.test.ts48L
-rw-r--r--packages/wallet-webui/test/story-entry.test.ts12L
-rw-r--r--packages/wallet-webui/test/token-model.test.ts80L
-rw-r--r--packages/wallet-webui/test/transaction-model.test.ts566L
-rw-r--r--packages/wallet-webui/test/withdrawal-model.test.ts375L
-rw-r--r--packages/wallet-webui/test/worker-transport.test.ts207L
-rw-r--r--packages/wallet-webui/tsconfig.json32L
-rw-r--r--packages/web-util/.prettierignore2L
-rw-r--r--packages/web-util/README.md16L
-rwxr-xr-xpackages/web-util/bin/taler-web-cli.mjs19L
-rwxr-xr-xpackages/web-util/build.mjs159L
-rwxr-xr-xpackages/web-util/dev.mjs42L
-rw-r--r--packages/web-util/package.json71L
-rw-r--r--packages/web-util/postcss.config.js6L
-rw-r--r--packages/web-util/src/assets/lang.svg48L
-rw-r--r--packages/web-util/src/assets/taler-logo-white.png4996B
-rw-r--r--packages/web-util/src/components/Accessibility.test.tsx82L
-rw-r--r--packages/web-util/src/components/Attention.tsx196L
-rw-r--r--packages/web-util/src/components/Button.tsx135L
-rw-r--r--packages/web-util/src/components/CopyButton.tsx99L
-rw-r--r--packages/web-util/src/components/ErrorLoading.tsx109L
-rw-r--r--packages/web-util/src/components/Footer.test.tsx36L
-rw-r--r--packages/web-util/src/components/Footer.tsx165L
-rw-r--r--packages/web-util/src/components/Header.tsx340L
-rw-r--r--packages/web-util/src/components/LangSelector.tsx244L
-rw-r--r--packages/web-util/src/components/Loading.tsx67L
-rw-r--r--packages/web-util/src/components/NotificationBanner.test.tsx233L
-rw-r--r--packages/web-util/src/components/NotificationBanner.tsx188L
-rw-r--r--packages/web-util/src/components/Pagination.tsx58L
-rw-r--r--packages/web-util/src/components/RenderAmount.tsx56L
-rw-r--r--packages/web-util/src/components/SafeMarkdown.tsx674L
-rw-r--r--packages/web-util/src/components/ShowInputErrorLabel.tsx33L
-rw-r--r--packages/web-util/src/components/TalerQrCode.test.ts86L
-rw-r--r--packages/web-util/src/components/TalerQrCode.tsx368L
-rw-r--r--packages/web-util/src/components/Time.tsx80L
-rw-r--r--packages/web-util/src/components/index.ts17L
-rw-r--r--packages/web-util/src/components/utils.ts113L
-rw-r--r--packages/web-util/src/context/activity.ts79L
-rw-r--r--packages/web-util/src/context/bank-api.ts263L
-rw-r--r--packages/web-util/src/context/challenger-api.ts315L
-rw-r--r--packages/web-util/src/context/common-preferences.ts55L
-rw-r--r--packages/web-util/src/context/exchange-api.ts309L
-rw-r--r--packages/web-util/src/context/index.ts13L
-rw-r--r--packages/web-util/src/context/navigation.test.ts49L
-rw-r--r--packages/web-util/src/context/navigation.ts140L
-rw-r--r--packages/web-util/src/context/notification.ts56L
-rw-r--r--packages/web-util/src/context/translation.ts181L
-rw-r--r--packages/web-util/src/context/wallet-integration.ts83L
-rw-r--r--packages/web-util/src/custom.d.ts12L
-rw-r--r--packages/web-util/src/declaration.d.ts35L
-rw-r--r--packages/web-util/src/forms/AcceptTosForm.test.tsx189L
-rw-r--r--packages/web-util/src/forms/AcceptTosForm.tsx520L
-rw-r--r--packages/web-util/src/forms/Calendar.tsx220L
-rw-r--r--packages/web-util/src/forms/Caption.tsx41L
-rw-r--r--packages/web-util/src/forms/Dialog.tsx33L
-rw-r--r--packages/web-util/src/forms/FormProvider.tsx132L
-rw-r--r--packages/web-util/src/forms/Group.tsx43L
-rw-r--r--packages/web-util/src/forms/HtmlIframe.tsx43L
-rw-r--r--packages/web-util/src/forms/field-types.ts152L
-rw-r--r--packages/web-util/src/forms/fields/ExternalLink.tsx61L
-rw-r--r--packages/web-util/src/forms/fields/InputAbsoluteTime.stories.tsx63L
-rw-r--r--packages/web-util/src/forms/fields/InputAbsoluteTime.tsx91L
-rw-r--r--packages/web-util/src/forms/fields/InputAmount.stories.tsx69L
-rw-r--r--packages/web-util/src/forms/fields/InputAmount.test.tsx113L
-rw-r--r--packages/web-util/src/forms/fields/InputAmount.tsx32L
-rw-r--r--packages/web-util/src/forms/fields/InputArray.stories.tsx173L
-rw-r--r--packages/web-util/src/forms/fields/InputArray.test.tsx239L
-rw-r--r--packages/web-util/src/forms/fields/InputArray.tsx317L
-rw-r--r--packages/web-util/src/forms/fields/InputChoiceHorizontal.stories.tsx77L
-rw-r--r--packages/web-util/src/forms/fields/InputChoiceHorizontal.tsx81L
-rw-r--r--packages/web-util/src/forms/fields/InputChoiceStacked.stories.tsx77L
-rw-r--r--packages/web-util/src/forms/fields/InputChoiceStacked.tsx133L
-rw-r--r--packages/web-util/src/forms/fields/InputDownloadLink.tsx89L
-rw-r--r--packages/web-util/src/forms/fields/InputDrilldown.tsx70L
-rw-r--r--packages/web-util/src/forms/fields/InputDuration.stories.tsx62L
-rw-r--r--packages/web-util/src/forms/fields/InputDuration.tsx355L
-rw-r--r--packages/web-util/src/forms/fields/InputDurationText.stories.tsx64L
-rw-r--r--packages/web-util/src/forms/fields/InputDurationText.tsx95L
-rw-r--r--packages/web-util/src/forms/fields/InputFile.stories.tsx78L
-rw-r--r--packages/web-util/src/forms/fields/InputFile.tsx174L
-rw-r--r--packages/web-util/src/forms/fields/InputInteger.stories.tsx85L
-rw-r--r--packages/web-util/src/forms/fields/InputInteger.tsx24L
-rw-r--r--packages/web-util/src/forms/fields/InputIsoDate.stories.tsx64L
-rw-r--r--packages/web-util/src/forms/fields/InputIsoDate.tsx143L
-rw-r--r--packages/web-util/src/forms/fields/InputLine.tsx331L
-rw-r--r--packages/web-util/src/forms/fields/InputPhone.tsx7L
-rw-r--r--packages/web-util/src/forms/fields/InputSecret.stories.tsx57L
-rw-r--r--packages/web-util/src/forms/fields/InputSecret.tsx7L
-rw-r--r--packages/web-util/src/forms/fields/InputSelectMultiple.stories.tsx126L
-rw-r--r--packages/web-util/src/forms/fields/InputSelectMultiple.test.tsx135L
-rw-r--r--packages/web-util/src/forms/fields/InputSelectMultiple.tsx313L
-rw-r--r--packages/web-util/src/forms/fields/InputSelectOne.stories.tsx157L
-rw-r--r--packages/web-util/src/forms/fields/InputSelectOne.test.tsx149L
-rw-r--r--packages/web-util/src/forms/fields/InputSelectOne.tsx280L
-rw-r--r--packages/web-util/src/forms/fields/InputText.stories.tsx75L
-rw-r--r--packages/web-util/src/forms/fields/InputText.tsx7L
-rw-r--r--packages/web-util/src/forms/fields/InputTextArea.stories.tsx63L
-rw-r--r--packages/web-util/src/forms/fields/InputTextArea.tsx7L
-rw-r--r--packages/web-util/src/forms/fields/InputToggle.stories.tsx106L
-rw-r--r--packages/web-util/src/forms/fields/InputToggle.tsx100L
-rw-r--r--packages/web-util/src/forms/forms-types.ts375L
-rw-r--r--packages/web-util/src/forms/forms-ui.test.tsx231L
-rw-r--r--packages/web-util/src/forms/forms-ui.tsx560L
-rw-r--r--packages/web-util/src/forms/forms-utils.ts513L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_11_customer.stories.tsx51L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_11_customer.ts142L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_11_officer.stories.tsx35L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_11_officer.ts166L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_12.stories.tsx45L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_12.ts319L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_12_13.test.ts125L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_12_13_common.ts136L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_13.stories.tsx43L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_13.ts353L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_14.stories.tsx34L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_14.ts181L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_1_customer.stories.tsx59L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_1_customer.ts511L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_1_officer.stories.tsx38L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_1_officer.ts178L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_4.stories.tsx36L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_4.ts426L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_5.stories.tsx35L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_5.ts189L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_9_customer.stories.tsx35L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_9_customer.ts135L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_9_metadata.test.ts34L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_9_officer.stories.tsx35L
-rw-r--r--packages/web-util/src/forms/gana/VQF_902_9_officer.ts124L
-rw-r--r--packages/web-util/src/forms/gana/accept-tos.stories.tsx74L
-rw-r--r--packages/web-util/src/forms/gana/accept-tos.ts59L
-rw-r--r--packages/web-util/src/forms/gana/challenger_email.ts49L
-rw-r--r--packages/web-util/src/forms/gana/challenger_postal.ts65L
-rw-r--r--packages/web-util/src/forms/gana/challenger_sms.ts49L
-rw-r--r--packages/web-util/src/forms/gana/generic_note.stories.tsx34L
-rw-r--r--packages/web-util/src/forms/gana/generic_note.ts81L
-rw-r--r--packages/web-util/src/forms/gana/generic_upload.stories.tsx37L
-rw-r--r--packages/web-util/src/forms/gana/generic_upload.ts55L
-rw-r--r--packages/web-util/src/forms/gana/index.stories.ts39L
-rw-r--r--packages/web-util/src/forms/gana/multi_upload.stories.tsx47L
-rw-r--r--packages/web-util/src/forms/gana/multi_upload.ts106L
-rw-r--r--packages/web-util/src/forms/gana/nameAndBirthdate.ts44L
-rw-r--r--packages/web-util/src/forms/gana/personal-info.stories.tsx39L
-rw-r--r--packages/web-util/src/forms/gana/personal-info.ts53L
-rw-r--r--packages/web-util/src/forms/gana/simplest.ts76L
-rw-r--r--packages/web-util/src/forms/gana/vqf.ts389L
-rw-r--r--packages/web-util/src/forms/index.stories.test.ts54L
-rw-r--r--packages/web-util/src/forms/index.stories.ts58L
-rw-r--r--packages/web-util/src/forms/index.ts154L
-rw-r--r--packages/web-util/src/hooks/errors.ts40L
-rw-r--r--packages/web-util/src/hooks/index.stories.ts0B
-rw-r--r--packages/web-util/src/hooks/index.ts30L
-rw-r--r--packages/web-util/src/hooks/useAsync.ts205L
-rw-r--r--packages/web-util/src/hooks/useAsyncAction.ts85L
-rw-r--r--packages/web-util/src/hooks/useAsyncAsHook.ts108L
-rw-r--r--packages/web-util/src/hooks/useForm.test.tsx177L
-rw-r--r--packages/web-util/src/hooks/useForm.ts614L
-rw-r--r--packages/web-util/src/hooks/useLang.ts81L
-rw-r--r--packages/web-util/src/hooks/useLocalStorage.test.tsx215L
-rw-r--r--packages/web-util/src/hooks/useLocalStorage.ts121L
-rw-r--r--packages/web-util/src/hooks/useNotifications.ts222L
-rw-r--r--packages/web-util/src/hooks/useNotifiedOperation.ts86L
-rw-r--r--packages/web-util/src/i18n/de.po2770L
-rw-r--r--packages/web-util/src/i18n/es.po2761L
-rw-r--r--packages/web-util/src/i18n/fr.po4281L
-rw-r--r--packages/web-util/src/i18n/poheader26L
-rw-r--r--packages/web-util/src/i18n/strings.ts2540L
-rw-r--r--packages/web-util/src/i18n/web-util.pot2457L
-rw-r--r--packages/web-util/src/index.browser.ts7L
-rw-r--r--packages/web-util/src/index.build.test.ts32L
-rw-r--r--packages/web-util/src/index.build.ts356L
-rw-r--r--packages/web-util/src/index.html41L
-rw-r--r--packages/web-util/src/index.node.ts1L
-rw-r--r--packages/web-util/src/index.testing.ts1L
-rw-r--r--packages/web-util/src/live-reload-poll.ts10L
-rw-r--r--packages/web-util/src/live-reload-ws.ts10L
-rw-r--r--packages/web-util/src/live-reload.ts139L
-rw-r--r--packages/web-util/src/serve.ts248L
-rw-r--r--packages/web-util/src/stories-dev.ts2L
-rw-r--r--packages/web-util/src/stories-utils.test.tsx378L
-rw-r--r--packages/web-util/src/stories-utils.tsx1130L
-rw-r--r--packages/web-util/src/stories.css3L
-rw-r--r--packages/web-util/src/stories.html21L
-rw-r--r--packages/web-util/src/stories.tsx49L
-rw-r--r--packages/web-util/src/tests/hook.ts315L
-rw-r--r--packages/web-util/src/utils/base64.ts28L
-rw-r--r--packages/web-util/src/utils/buildPaginatedResult.test.tsx174L
-rw-r--r--packages/web-util/src/utils/buildPaginatedResult.ts159L
-rw-r--r--packages/web-util/src/utils/http-impl.browser.ts119L
-rw-r--r--packages/web-util/src/utils/http-impl.sw.ts33L
-rw-r--r--packages/web-util/src/utils/index.ts6L
-rw-r--r--packages/web-util/src/utils/observable.test.ts22L
-rw-r--r--packages/web-util/src/utils/observable.ts214L
-rw-r--r--packages/web-util/src/utils/route.ts127L
-rw-r--r--packages/web-util/src/utils/select-ui-lists.ts42L
-rw-r--r--packages/web-util/tailwind.config.js11L
-rw-r--r--packages/web-util/tsconfig.json20L
-rw-r--r--pnpm-lock.yaml7789L
-rw-r--r--pnpm-workspace.yaml8L
-rw-r--r--tsconfig.defaults.json33L
-rw-r--r--tsconfig.json64L