mirror of
https://github.com/altcha-org/altcha.git
synced 2026-01-25 04:16:41 +00:00
v2
This commit is contained in:
7
.github/workflows/ci.yml
vendored
7
.github/workflows/ci.yml
vendored
@@ -13,8 +13,9 @@ jobs:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20.x
|
||||
node-version: 22.x
|
||||
- run: npm install
|
||||
- run: npm run test
|
||||
- run: npx playwright install --with-deps
|
||||
- run: npx playwright test
|
||||
- uses: DevExpress/testcafe-action@latest
|
||||
with:
|
||||
args: "chrome,firefox e2e/altcha.fixture.ts --hostname localhost"
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
npm run build
|
||||
git add dist
|
||||
git add dist*
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2023 Daniel Regeci
|
||||
Copyright (c) 2023 Daniel Regeci, BAU Software s.r.o.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
311
README.md
311
README.md
@@ -1,20 +1,45 @@
|
||||
# ALTCHA
|
||||
|
||||
ALTCHA leverages a proof-of-work mechanism to safeguard your website, APIs, and online services from spam and abuse. Unlike traditional solutions, ALTCHA is self-hosted, does not rely on cookies or fingerprinting, and ensures complete user privacy. It is fully compliant with [GDPR](https://altcha.org/docs/gdpr/), [WCAG 2.2 AA-level](https://altcha.org/docs/wcag/), and the [European Accessibility Act](https://altcha.org/docs/european-accessibility-act-2025/).
|
||||
ALTCHA is a self-hosted, privacy-first security solution that protects your websites, APIs, and online services from spam and abuse through an innovative proof-of-work mechanism. Unlike traditional CAPTCHAs that depend on intrusive methods like cookies or fingerprinting, ALTCHA delivers robust protection while respecting user privacy.
|
||||
|
||||
For more details, visit [ALTCHA](https://altcha.org).
|
||||
ALTCHA is fully compliant with:
|
||||
|
||||
- **Global privacy regulations**: GDPR, HIPAA, CCPA, PIPEDA/CPPA, LGPD, DPDPA, and PIPL
|
||||
- **Accessibility standards**: [WCAG 2.2 AA-level](https://altcha.org/docs/wcag/) and the [European Accessibility Act](https://altcha.org/docs/european-accessibility-act-2025/)
|
||||
|
||||
For more details, visit [altcha.org](https://altcha.org).
|
||||
|
||||
## Features
|
||||
|
||||
- **Frictionless Experience**: Utilizes proof-of-work (PoW) instead of visual puzzles, ensuring a seamless user experience.
|
||||
- **Cookie-Free Design**: Built to be GDPR-compliant by default, with no cookies or tracking.
|
||||
- **Frictionless Experience**: Uses proof-of-work (PoW) instead of visual puzzles for a seamless user experience.
|
||||
- **Code Challenge (New in v2)**: Supports accessible code challenges ("enter code from image") with an audio option.
|
||||
- **Cookie-Free Design**: GDPR-compliant by default—no cookies or tracking.
|
||||
- **Fully Accessible**: Meets WCAG 2.2 AA-level standards and complies with the European Accessibility Act (EAA).
|
||||
- **Lightweight**: Minimal bundle size for fast page loads and optimal performance.
|
||||
- **Self-Hosted**: Operates independently without depending on third-party services.
|
||||
- **SaaS Option Available**: Get started quickly with the SaaS API at [altcha.org](https://altcha.org/).
|
||||
- **Self-Hosted**: No dependency on third-party services.
|
||||
|
||||
## What’s New in v2
|
||||
|
||||
Version 2 introduces enhanced accessibility, expanded language support, and integration with **ALTCHA Sentinel**—a self-hosted anti-spam solution for websites, apps, and services.
|
||||
|
||||
### Key Improvements in v2
|
||||
|
||||
- **Built-in Internationalization (i18n)** for 48+ languages
|
||||
- **Improved RTL (right-to-left) language support**
|
||||
- **Enhanced WCAG accessibility**
|
||||
- **Support for accessible code challenges** (image + audio options)
|
||||
|
||||
### Migrating from v1
|
||||
|
||||
Version 2 (v2) is fully compatible with v1, and minimal migration steps are required. However, be sure to test your integration after updating.
|
||||
|
||||
- Translations: v2 introduces a new [built-in internationalization (i18n) system](#internationalization-i18n). The use of the `strings` attribute is now discouraged in favor of this new system.
|
||||
- [ALTCHA Sentinel](https://altcha.org/docs/v2/sentinel): Sentinel is a new self-hosted solution that replaces the previous SaaS services and the SpamFilter. We recommend migrating to Sentinel for better compliance, enhanced security, unlimited verifications, and an adaptive Captcha with code-challenge support.
|
||||
|
||||
## Examples
|
||||
|
||||
Explore starter templates for popular frameworks:
|
||||
|
||||
- [React](https://github.com/altcha-org/altcha-starter-react-ts)
|
||||
- [Vue](https://github.com/altcha-org/altcha-starter-vue-ts)
|
||||
- [Svelte](https://github.com/altcha-org/altcha-starter-svelte-ts)
|
||||
@@ -32,18 +57,13 @@ For more details, visit [ALTCHA](https://altcha.org).
|
||||
- [Ruby](https://github.com/altcha-org/altcha-lib-rb)
|
||||
- [Elixir](https://github.com/altcha-org/altcha-lib-ex)
|
||||
|
||||
## CMS
|
||||
## Plugins & CMS
|
||||
|
||||
- [WordPress plugin](https://github.com/altcha-org/wordpress-plugin)
|
||||
- [Other libraries and plugins](https://altcha.org/docs/integrations/)
|
||||
|
||||
## More anti-spam solutions
|
||||
|
||||
- [Spam Filter](https://altcha.org/anti-spam) - stop sophisticated attacks and human-generated spam by classifying data.
|
||||
- [Libraries and plugins](https://altcha.org/docs/integrations/)
|
||||
|
||||
## Usage
|
||||
|
||||
ALTCHA widget is distributed as a "Web Component" and [supports all modern browsers](https://developer.mozilla.org/en-US/docs/Web/API/Web_components#browser_compatibility).
|
||||
The ALTCHA widget is distributed as a **Web Component** and [supports all modern browsers](https://developer.mozilla.org/en-US/docs/Web/API/Web_components#browser_compatibility).
|
||||
|
||||
### 1. Install ALTCHA
|
||||
|
||||
@@ -51,63 +71,91 @@ ALTCHA widget is distributed as a "Web Component" and [supports all modern brows
|
||||
npm install altcha
|
||||
```
|
||||
|
||||
import `altcha` in your main file:
|
||||
Import in your main file:
|
||||
|
||||
```js
|
||||
import 'altcha';
|
||||
```
|
||||
|
||||
or insert `<script>` tag to your website:
|
||||
Or load via `<script>` tag:
|
||||
|
||||
```html
|
||||
<script async defer src="/altcha.js" type="module"></script>
|
||||
```
|
||||
|
||||
CDN: https://cdn.jsdelivr.net/gh/altcha-org/altcha@main/dist/altcha.min.js
|
||||
**CDN**:
|
||||
|
||||
### 2. Use `<altcha-widget>` tag in your forms
|
||||
```html
|
||||
<script
|
||||
async
|
||||
defer
|
||||
src="https://cdn.jsdelivr.net/gh/altcha-org/altcha@main/dist/altcha.min.js"
|
||||
type="module"
|
||||
></script>
|
||||
```
|
||||
|
||||
### 2. Add `<altcha-widget>` to Your Forms
|
||||
|
||||
```html
|
||||
<form>
|
||||
<altcha-widget
|
||||
challengeurl="https://..."
|
||||
></altcha-widget>
|
||||
<altcha-widget challengeurl="https://..."></altcha-widget>
|
||||
</form>
|
||||
```
|
||||
|
||||
See the [configuration](#configuration) below or visit the [website integration documentation](https://altcha.org/docs/website-integration).
|
||||
See [configuration options](#configuration) or the [website integration docs](https://altcha.org/docs/website-integration).
|
||||
|
||||
### 3. Integrate ALTCHA with your server
|
||||
### 3. Integrate with Your Server
|
||||
|
||||
See [server documentation](https://altcha.org/docs/server-integration) for more details.
|
||||
Refer to the [server documentation](https://altcha.org/docs/server-integration) for implementation details.
|
||||
|
||||
## Supported Browsers
|
||||
|
||||
ALTCHA works on modern browsers with **Web Crypto API** support (specifically `crypto.subtle` - [caniuse.com](https://caniuse.com/?search=subtle)).
|
||||
|
||||
**Supported**:
|
||||
|
||||
- Chrome 67+ (desktop & Android)
|
||||
- Edge 79+
|
||||
- Firefox 63+ (desktop & Android)
|
||||
- Safari 11+ (macOS & iOS)
|
||||
- Any browser supporting Web Components + Web Crypto
|
||||
|
||||
**Not Supported**:
|
||||
|
||||
- Internet Explorer 11 (or older)
|
||||
|
||||
## Bundle Size
|
||||
|
||||
ALTCHA's default bundle is lightweight, combining all assets, including CSS and the JavaScript Web Worker, into a single file. When GZIPped, it totals only 17 kB, making ALTCHA’s widget 94% smaller than reCAPTCHA.
|
||||
ALTCHA is optimized for performance:
|
||||
|
||||
|Distribution|Size (GZIPped)|
|
||||
|---|---|
|
||||
|ALTCHA (v1.x)|17 kB|
|
||||
|hCaptcha|48+ kB|
|
||||
|reCAPTCHA|270+ kB|
|
||||
| Distribution | Size (GZIPped) |
|
||||
| ---------------------------- | -------------- |
|
||||
| ALTCHA | 29+ kB |
|
||||
| ALTCHA with all translations | 42+ kB |
|
||||
| hCaptcha | 48+ kB |
|
||||
| reCAPTCHA | 270+ kB |
|
||||
|
||||
When GZIPped, it totals about 29 kB, making ALTCHA’s widget about 90% smaller than reCAPTCHA.
|
||||
|
||||
## Content Security Policy (CSP)
|
||||
|
||||
The default distribution bundle of the WebComponent includes styles and the worker in a single file. This might cause issues with strict CSP rules. If you require strict CSP compliance, consider using the scripts located in the `/dist_external` directory. For more details, please refer to the [documentation](https://altcha.org/docs/website-integration).
|
||||
The default bundle includes styles and workers in a single file. For strict CSP compliance, use scripts from `/dist_external`. Learn more in the [documentation](https://altcha.org/docs/website-integration).
|
||||
|
||||
## Configuration
|
||||
|
||||
Required options (at least one is required):
|
||||
|
||||
- **challengeurl**: URL of your server to fetch the challenge from. Refer to [server integration](https://altcha.org/docs/server-integration).
|
||||
- **challengejson**: JSON-encoded challenge data. If avoiding an HTTP request to `challengeurl`, provide the data here.
|
||||
- **challengeurl**: Server endpoint to fetch the challenge.
|
||||
- **challengejson**: Preloaded JSON challenge data (avoids HTTP requests).
|
||||
|
||||
Additional options:
|
||||
|
||||
- **auto**: Automatically verify without user interaction (possible values: `off`, `onfocus`, `onload`, `onsubmit`).
|
||||
- **credentials**: Whether to include [credentials](https://developer.mozilla.org/en-US/docs/Web/API/RequestInit#credentials) with the challenge request (possible values: `omit`, `same-origin`, `include`).
|
||||
- **customfetch**: A custom `fetch` function for retrieving the challenge.
|
||||
Accepts `url: string` and `init: RequestInit` as arguments and must return a [`Response`](https://developer.mozilla.org/en-US/docs/Web/API/Response).
|
||||
- **delay**: Artificial delay in milliseconds before verification (defaults to 0).
|
||||
- **disableautofocus**: If true, prevents the code-challenge input from automatically receiving focus on render (defaults to `false`).
|
||||
- **expire**: Challenge expiration duration in milliseconds.
|
||||
- **floating**: Enable floating UI (possible values: `auto`, `top`, `bottom`).
|
||||
- **floatinganchor**: CSS selector of the "anchor" to which the floating UI will be attached (defaults to the `button[type="submit"]` in the related form).
|
||||
@@ -116,6 +164,7 @@ Additional options:
|
||||
- **hidefooter**: Hide the footer (ALTCHA link).
|
||||
- **hidelogo**: Hide the ALTCHA logo.
|
||||
- **id**: The checkbox `id` attribute. Useful for multiple instances of the widget on the same page.
|
||||
- **language**: The ISO alpha-2 code of the language to use (the language file be imported from `altcha/i18n/*`).
|
||||
- **maxnumber**: Max number to iterate to (defaults to 1,000,000).
|
||||
- **name**: Name of the hidden field containing the payload (defaults to "altcha").
|
||||
- **strings**: JSON-encoded translation strings. Refer to [customization](https://altcha.org/docs/widget-customization).
|
||||
@@ -123,12 +172,6 @@ Additional options:
|
||||
- **workers**: Number of workers to utilize for PoW (defaults to `navigator.hardwareConcurrency || 8`, max value `16`).
|
||||
- **workerurl**: URL of the Worker script (defaults to `./worker.js`, only works with `external` build).
|
||||
|
||||
Spam Filter-related options:
|
||||
|
||||
- **blockspam**: Only used with the `spamfilter` option. If enabled, it will block form submission and fail verification if the Spam Filter returns a negative classification. This prevents form submission.
|
||||
- **spamfilter**: Enable [Spam Filter](#spam-filter).
|
||||
- **verifyurl**: URL for server-side verification requests. This option is automatically configured when the `spamfilter` option is used. Override this setting only if using a custom server implementation.
|
||||
|
||||
Data Obfuscation options:
|
||||
|
||||
- **obfuscated**: The [obfuscated data](https://altcha.org/docs/obfuscation) provided as a base64-encoded string (requires `altcha/obfuscation` plugin). Use only without `challengeurl`/`challengejson`.
|
||||
@@ -139,24 +182,81 @@ Development / Testing options:
|
||||
- **mockerror**: Causes verification to always fail with a "mock" error.
|
||||
- **test**: Generates a "mock" challenge within the widget, bypassing the request to `challengeurl`.
|
||||
|
||||
## Plugins
|
||||
## Internationalization (i18n)
|
||||
|
||||
Version 0.9.x introduced _plugins_ that can be enabled by importing individual plugin scripts:
|
||||
ALTCHA supports **48+ languages**. You can import individual language translations or a bundle that includes all of them.
|
||||
|
||||
### Importing Translations
|
||||
|
||||
To import all translations:
|
||||
|
||||
```js
|
||||
import 'altcha/obfuscation';
|
||||
import 'altcha';
|
||||
import 'altcha/i18n/all';
|
||||
```
|
||||
|
||||
It is recommended to import plugins _before_ the main `altcha` package to ensure proper registration before any widget instance is created.
|
||||
To import specific languages only:
|
||||
|
||||
Available plugins built-in to the `altcha` package:
|
||||
```js
|
||||
import 'altcha/i18n/de';
|
||||
import 'altcha/i18n/fr-fr';
|
||||
```
|
||||
|
||||
- `altcha/analytics`: Enable analytics with [ALTCHA Forms](https://altcha.org/forms/). See [HTML submissions documentation](https://altcha.org/docs/forms/features/html-submissions).
|
||||
- `altcha/obfuscation`: Enable [obfuscation](https://altcha.org/docs/obfuscation) for sensitive data such as email addresses or phone numbers.
|
||||
- `altcha/upload`: Enable file upload from `type=file` fields to [ALTCHA Forms](https://altcha.org/forms/). See [HTML submissions documentation](https://altcha.org/docs/forms/features/html-submissions).
|
||||
Alternatively, you can import the combined bundle, which includes both the widget and all translations:
|
||||
|
||||
To enable specific plugins for a particular instance of the widget, use the `plugins` attribute in the widget tag. List the names of the plugins you want to enable, separated by commas, such as `plugins="analytics,obfuscation"`. Plugins still need to be imported as described above. The `plugins` attribute only specifies which plugins should be active for that instance, even if other plugins are already imported.
|
||||
```js
|
||||
import 'altcha/i18n';
|
||||
```
|
||||
|
||||
### Language Detection
|
||||
|
||||
The widget automatically detects the language from:
|
||||
|
||||
- The `<html lang="...">` attribute
|
||||
- The user's browser settings (`navigator.languages`)
|
||||
|
||||
To override the language manually, use the `language` attribute:
|
||||
|
||||
```html
|
||||
<altcha-widget language="de"></altcha-widget>
|
||||
```
|
||||
|
||||
### Customizing Translations
|
||||
|
||||
You can override default translations by updating the global `altchaI18n` registry (`globalThis.altchaI18n` or `window.altchaI18n`):
|
||||
|
||||
```js
|
||||
import 'altcha/i18n/de';
|
||||
|
||||
globalThis.altchaI18n.set('de', {
|
||||
...globalThis.altchaI18n.get('de'),
|
||||
label: 'Ich bin ein Mensch', // Custom label
|
||||
});
|
||||
```
|
||||
|
||||
## Code Challenges
|
||||
|
||||
For additional verification, ALTCHA supports **image/audio code challenges** (e.g., "Enter the code from the image"). This feature requires [ALTCHA Sentinel](https://altcha.org/docs/v2/sentinel) or a custom server implementation.
|
||||
|
||||
## Plugins
|
||||
|
||||
Extend functionality with plugins:
|
||||
|
||||
```js
|
||||
import 'altcha/obfuscation'; // Data obfuscation
|
||||
import 'altcha/upload'; // File uploads
|
||||
import 'altcha'; // Main package
|
||||
```
|
||||
|
||||
Enable plugins per widget:
|
||||
|
||||
```html
|
||||
<altcha-widget plugins="upload,obfuscation"></altcha-widget>
|
||||
```
|
||||
|
||||
### Available Plugins
|
||||
|
||||
- **obfuscation**: Secure sensitive data (emails, phone numbers).
|
||||
- **upload**: File uploads with ALTCHA Sentinel or a custom backend.
|
||||
|
||||
## Programmatic Configuration
|
||||
|
||||
@@ -182,6 +282,11 @@ Available configuration options:
|
||||
export interface Configure {
|
||||
auto?: 'off' | 'onfocus' | 'onload' | 'onsubmit';
|
||||
challenge?: {
|
||||
codeChallenge?: {
|
||||
audio?: string;
|
||||
image: string;
|
||||
length?: number;
|
||||
};
|
||||
algorithm: string;
|
||||
challenge: string;
|
||||
maxnumber?: number;
|
||||
@@ -189,9 +294,13 @@ export interface Configure {
|
||||
signature: string;
|
||||
};
|
||||
challengeurl?: string;
|
||||
customfetch?: string | ((url: string, init?: RequestInit) => Promise<Response>);
|
||||
credentials?: 'omit' | 'same-origin' | 'include' | boolean;
|
||||
customfetch?:
|
||||
| string
|
||||
| ((url: string, init?: RequestInit) => Promise<Response>);
|
||||
debug?: boolean;
|
||||
delay?: number;
|
||||
disableautofocus?: boolean;
|
||||
expire?: number;
|
||||
floating?: 'auto' | 'top' | 'bottom';
|
||||
floatinganchor?: string;
|
||||
@@ -204,16 +313,23 @@ export interface Configure {
|
||||
name?: string;
|
||||
obfuscated?: string;
|
||||
refetchonexpire?: boolean;
|
||||
spamfilter?: boolean | 'ipAddress' | SpamFilter;
|
||||
spamfilter?: boolean | 'ipAddress' | SpamFilter; // deprecated
|
||||
strings?: {
|
||||
ariaLinkLabel: strin;
|
||||
enterCode: string;
|
||||
enterCodeAria: string;
|
||||
error: string;
|
||||
expired: string;
|
||||
footer: string;
|
||||
getAudioChallenge: string;
|
||||
label: string;
|
||||
loading: string;
|
||||
reload: strin;
|
||||
verificationRequired: string;
|
||||
verified: string;
|
||||
verifying: string;
|
||||
waitAlert: string;
|
||||
}
|
||||
};
|
||||
test?: boolean | number | 'delay';
|
||||
verifyurl?: string;
|
||||
workers?: number;
|
||||
@@ -221,57 +337,24 @@ export interface Configure {
|
||||
}
|
||||
```
|
||||
|
||||
## Custom `fetch` Function
|
||||
|
||||
The widget does not send cookies (i.e., it does not use `credentials: 'include'`) when requesting the challenge from the server. To modify this behavior or add custom request headers, use the `customfetch` configuration option. This option lets you define a custom request function.
|
||||
|
||||
The custom function must return a [`Response`](https://developer.mozilla.org/en-US/docs/Web/API/Response) object.
|
||||
|
||||
### Sending Cookies
|
||||
|
||||
To include cookies in the request, use `credentials: 'include'`:
|
||||
|
||||
```ts
|
||||
function altchaCustomFetch(url: string, init: RequestInit) {
|
||||
return fetch(url, {
|
||||
...init,
|
||||
credentials: 'include', // Include cookies with the request
|
||||
});
|
||||
}
|
||||
```
|
||||
|
||||
For more details on possible request options, refer to the [`Request`](https://developer.mozilla.org/en-US/docs/Web/API/Request) documentation.
|
||||
|
||||
### Using `customfetch`
|
||||
|
||||
The `customfetch` option can accept either:
|
||||
- A `string` (the name of a globally accessible function defined in the global context, such as `window`), or
|
||||
- A function itself.
|
||||
|
||||
### Example Usage
|
||||
|
||||
```html
|
||||
<altcha-widget
|
||||
challengeurl="https://example.com/challenge"
|
||||
customfetch="altchaCustomFetch"
|
||||
></altcha-widget>
|
||||
```
|
||||
|
||||
## Events
|
||||
|
||||
- **code** - Triggers when code-challenge verification is requested.
|
||||
- **load** - Triggers when the widget loads. The exported methods become available after this event.
|
||||
- **serververification** - Triggers upon a server verification (only in conjunction with `spamfilter`).
|
||||
- **sentinelverification** - Triggers upon a verification with ALTCHA Sentinel.
|
||||
- **serververification** - (Deprecated) Triggers upon a server verification (only in conjunction with `spamfilter`).
|
||||
- **statechange** - Triggers whenever an internal `state` changes.
|
||||
- **verified** - Triggers when the challenge is verified.
|
||||
|
||||
```ts
|
||||
enum State {
|
||||
CODE = 'code',
|
||||
ERROR = 'error',
|
||||
VERIFIED = 'verified',
|
||||
VERIFYING = 'verifying',
|
||||
UNVERIFIED = 'unverified',
|
||||
EXPIRED = 'expired',
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
Using events:
|
||||
@@ -286,51 +369,8 @@ document.querySelector('#altcha').addEventListener('statechange', (ev) => {
|
||||
> [!IMPORTANT]
|
||||
> Both programmatic configuration and event listeners have to called/attached after the ALTCHA script loads, such as within `window.addEventListener('load', ...)`.
|
||||
|
||||
## Spam Filter
|
||||
|
||||
The widget integrates with ALTCHA's [Anti-Spam solution](https://altcha.org/anti-spam) to allow checking submitted form data for potential spam.
|
||||
|
||||
The Spam Filter API analyzes various signals in the submitted data to determine if it exhibits characteristics of spam. This non-invasive filtering helps reduce spam submissions without frustrating legitimate users.
|
||||
|
||||
### Spam Filter Configuration
|
||||
|
||||
The Spam Filter can be enabled with default configuration by setting the `spamfilter` option to `true`, or `ipAddress` to verify only the IP address and the time zone, or it can be customized using the following configuration schema:
|
||||
|
||||
```ts
|
||||
interface SpamFilter {
|
||||
blockedCountries?: string[];
|
||||
classifier?: string;
|
||||
disableRules?: string[];
|
||||
email?: string | false;
|
||||
expectedCountries?: string[];
|
||||
expectedLanguages?: string[];
|
||||
fields?: string[] | false;
|
||||
ipAddress?: string | false;
|
||||
text?: string | string[];
|
||||
timeZone?: string | false;
|
||||
}
|
||||
```
|
||||
|
||||
SpamFilter configuration options:
|
||||
|
||||
- **blockedCountries** - An array of country codes (ISO 3166 alpha-2) that you want to block.
|
||||
- **classifier** - Enforce a specific classifier.
|
||||
- **disableRules** - An array of rules to disable.
|
||||
- **email** - The name of the input field for the user's email. Disable email checking with `false`.
|
||||
- **expectedCountries** - An array of expected countries as 2-letter codes (ISO 3166-1 alpha-2).
|
||||
- **expectedLanguages** - An array of expected languages as 2-letter codes (ISO 639 alpha-2).
|
||||
- **fields** - An array of input names to send to the spam filter.
|
||||
- **ipAddress** - The user's IP is detected automatically but can be overridden or disabled with `false`.
|
||||
- **text** - The text to classify. An array of strings can also be submitted.
|
||||
- **timeZone** - The user's timezone is detected automatically but can be overridden or disabled with `false`.
|
||||
|
||||
To include the email field into `fields` (for easier server-side verification), configure the list of input names using the `spamfilter.fields: string[]` option.
|
||||
|
||||
### Exclude Inputs from Spam Checking
|
||||
|
||||
By default, all text inputs and textareas within the parent form are spam-checked. To exclude a specific input, add the `data-no-spamfilter` attribute. Alternatively, explicitly list the checked fields using the `fields` config option.
|
||||
|
||||
## Contributing
|
||||
|
||||
See [Contributing Guide](https://github.com/altcha-org/altcha/blob/main/CONTRIBUTING.md) and please follow our [Code of Conduct](https://github.com/altcha-org/altcha/blob/main/CODE_OF_CONDUCT.md).
|
||||
|
||||
## Sponsorship
|
||||
@@ -339,5 +379,4 @@ This project is sponsored by [BAUSW.com - Digital Construction Site Diary](https
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
|
||||
**MIT**
|
||||
|
||||
90
SECURITY.md
90
SECURITY.md
@@ -1,55 +1,63 @@
|
||||
# Security Policy
|
||||
# Security Vulnerability Disclosure Policy
|
||||
|
||||
## Supported Versions
|
||||
We take security seriously and value the contributions of the security community. If you believe you have found a vulnerability in our services or software, we encourage you to report it responsibly so we can address it promptly.
|
||||
|
||||
Security updates are available for all versions.
|
||||
### Reporting a Vulnerability
|
||||
|
||||
## Reporting a Vulnerability
|
||||
Please email your findings to published [security contacts](https://altcha.org/contact#reporting-security-issues).
|
||||
To ensure confidentiality, we recommend encrypting your report using our [PGP key](https://altcha.org/pgp/security-public-key.asc).
|
||||
|
||||
If you discover a vulnerability, please report it responsibly to our security email: `c2VjdXJpdHlAYWx0Y2hhLm9yZwo=`.
|
||||
Your report should include the following, where possible:
|
||||
|
||||
When reporting a vulnerability, please include the following details to help us quickly assess the issue:
|
||||
* A clear description of the vulnerability.
|
||||
* A working proof of concept or detailed steps to reproduce the issue.
|
||||
* Any relevant logs, screenshots, or code snippets that support your findings.
|
||||
|
||||
- Detailed steps to reproduce or a proof-of-concept
|
||||
- Any relevant tools and their versions used
|
||||
- Tool output and any logs or screenshots that may help
|
||||
We will acknowledge receipt of your report within 5 business days, and keep you informed about the progress of our investigation.
|
||||
|
||||
**PGP Public Key**: To ensure secure communication, please use our PGP public key when sending sensitive information:
|
||||
### In-Scope
|
||||
|
||||
```
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
We welcome reports that:
|
||||
|
||||
xjMEZtI2nxYJKwYBBAHaRw8BAQdA/RsvtqhwBMzb2lVbYgJ8jfbtOSW6X1Ju
|
||||
eJGrTnc/w7rNKXNlY3VyaXR5QGFsdGNoYS5vcmcgPHNlY3VyaXR5QGFsdGNo
|
||||
YS5vcmc+wowEEBYKAD4FgmbSNp8ECwkHCAmQQ77nSDCYPoIDFQgKBBYAAgEC
|
||||
GQECmwMCHgEWIQTjdfm4rd39SCeb0WpDvudIMJg+ggAAQBYA/AhHznOMm5zg
|
||||
L5NVtbEaVzjlGQgq935Ieg7i0ts/ulvSAQCifZduBr9W2Rlev2x4MIaN8PBY
|
||||
eq/UQjyDIoi3s+bBAM44BGbSNp8SCisGAQQBl1UBBQEBB0DMbZpWAHLF9W2y
|
||||
sFoTHPv0/9wBmd5HQHDFo30pYv6GGAMBCAfCeAQYFgoAKgWCZtI2nwmQQ77n
|
||||
SDCYPoICmwwWIQTjdfm4rd39SCeb0WpDvudIMJg+ggAAB2gA/RCLvMElWMP3
|
||||
Xb/GVjlYMKM+lP/+Vp6pEPp+oCfb5gg+AP9sTajrdA2GBv6Sc28/GZcbGEX2
|
||||
OlJjTSxs11Oj8es+Bg==
|
||||
=kb//
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
```
|
||||
* Demonstrate a real security risk (e.g., XSS, CSRF, SSRF, authentication bypass, privilege escalation, remote code execution, etc.).
|
||||
* Affect our software, services, or infrastructure directly under our control.
|
||||
* Include a valid proof of concept demonstrating how the vulnerability can be exploited.
|
||||
|
||||
## Vulnerability Disclosure Process
|
||||
### Out-of-Scope
|
||||
|
||||
- **Acknowledgment**: We will acknowledge receipt of your report within 48 hours.
|
||||
- **Assessment**: We will assess the vulnerability and determine the impact and priority.
|
||||
- **Resolution**: If the vulnerability is confirmed, we will work on a fix and inform you when it’s resolved.
|
||||
- **Disclosure**: We follow responsible disclosure. Once a fix is available, we will coordinate with you to disclose the vulnerability to the public.
|
||||
The following issues are generally not eligible for rewards, but we still welcome these reports as they help us improve overall security hygiene:
|
||||
|
||||
## Scope
|
||||
* Reports from automated tools or scanners that lack actionable proof of exploitability.
|
||||
* Security recommendations or best practices such as missing HTTP security headers, TLS configurations, DNS records, or server banners.
|
||||
* Denial of service attacks that rely on large volumes of traffic.
|
||||
* Rate limiting, CAPTCHA strength, or content/spam flooding.
|
||||
* Clickjacking on pages without sensitive actions.
|
||||
* Bugs that require root/jailbroken devices or outdated browsers.
|
||||
* Issues in third-party services or libraries not managed by us.
|
||||
|
||||
### In-Scope for Reporting:
|
||||
- ALTCHA Widget and any associated open-source code.
|
||||
- ALTCHA SaaS platform and related services.
|
||||
While these may not be considered critical security vulnerabilities, we still care and may address them internally where appropriate. Your feedback helps us maintain a stronger security posture.
|
||||
|
||||
### Out-of-Scope:
|
||||
- Any third-party services or software not managed by ALTCHA.
|
||||
- Automated tool or scan reports.
|
||||
- Distributed Denial of Service (DDoS) attacks that require large volumes of data.
|
||||
- Provisioning or usability issues.
|
||||
- Flooding of feedback, comments, messages, etc.
|
||||
- Issues related to networking protocols or industry standards.
|
||||
### Rewards
|
||||
|
||||
We may offer a discretionary reward (bounty) for valid, impactful reports that:
|
||||
|
||||
* Are submitted responsibly and in good faith.
|
||||
* Are not the result of automated scanning.
|
||||
* Include a clear demonstration of how the issue can be exploited in practice.
|
||||
|
||||
We do not offer rewards for:
|
||||
|
||||
* Reports generated solely through automated tools.
|
||||
* Vulnerabilities lacking a proof of concept.
|
||||
* Low-risk issues or theoretical attacks.
|
||||
|
||||
Reward amounts are determined at our discretion based on severity, impact, and quality of the report.
|
||||
|
||||
### Responsible Disclosure Guidelines
|
||||
|
||||
* Please do not publicly disclose vulnerabilities before we have had a chance to fix them.
|
||||
* Do not access, modify, or delete data that does not belong to you.
|
||||
* Avoid actions that could degrade or disrupt our services during testing.
|
||||
* Only test systems that are clearly part of our infrastructure.
|
||||
|
||||
We thank you for helping us keep our services safe and secure.
|
||||
|
||||
11
dist/altcha.d.ts
vendored
11
dist/altcha.d.ts
vendored
@@ -1,3 +1,4 @@
|
||||
import type { Writable } from 'svelte/store';
|
||||
export {};
|
||||
|
||||
declare module 'altcha';
|
||||
@@ -5,6 +6,11 @@ declare module 'altcha';
|
||||
declare global {
|
||||
var altchaCreateWorker: (url?: string) => Worker;
|
||||
var altchaPlugins: any[];
|
||||
var altchaI18n: {
|
||||
get: (language: string) => Record<string, string>;
|
||||
set: (language: string, translation: Record<string, string>) => void;
|
||||
store: Writable<Record<string, Record<string, string>>>;
|
||||
};
|
||||
|
||||
type AltchaState = 'error' | 'expired' | 'verified' | 'verifying' | 'unverified';
|
||||
|
||||
@@ -21,12 +27,15 @@ declare global {
|
||||
|
||||
interface AltchaWidgetOptions {
|
||||
auto?: 'off' | 'onfocus' | 'onload' | 'onsubmit';
|
||||
/** @deprecated */
|
||||
blockspam?: boolean;
|
||||
challengeurl?: string;
|
||||
challengejson?: string;
|
||||
credentials?: 'omit' | 'same-origin' | 'include' | boolean | undefined;
|
||||
customfetch?: string | ((url: string, init?: RequestInit) => Promise<Response>);
|
||||
debug?: boolean;
|
||||
delay?: number;
|
||||
disableautofocus?: boolean;
|
||||
expire?: number;
|
||||
floating?: 'auto' | 'top' | 'bottom' | 'false' | '' | boolean;
|
||||
floatinganchor?: string;
|
||||
@@ -35,6 +44,7 @@ declare global {
|
||||
hidefooter?: boolean;
|
||||
hidelogo?: boolean;
|
||||
id?: string;
|
||||
language?: string;
|
||||
maxnumber?: number;
|
||||
mockerror?: boolean;
|
||||
name?: string;
|
||||
@@ -48,6 +58,7 @@ declare global {
|
||||
onuploadprogress?: (ev: CustomEvent) => void;
|
||||
plugins?: string;
|
||||
refetchonexpire?: boolean;
|
||||
/** @deprecated */
|
||||
spamfilter?: boolean | 'ipAddress';
|
||||
strings?: string;
|
||||
test?: boolean | number;
|
||||
|
||||
158
dist/altcha.i18n.d.ts
vendored
Normal file
158
dist/altcha.i18n.d.ts
vendored
Normal file
@@ -0,0 +1,158 @@
|
||||
import type { Writable } from 'svelte/store';
|
||||
export {};
|
||||
|
||||
declare module 'altcha';
|
||||
|
||||
declare global {
|
||||
var altchaCreateWorker: (url?: string) => Worker;
|
||||
var altchaPlugins: any[];
|
||||
var altchaI18n: {
|
||||
get: (language: string) => Record<string, string>;
|
||||
set: (language: string, translation: Record<string, string>) => void;
|
||||
store: Writable<Record<string, Record<string, string>>>;
|
||||
};
|
||||
|
||||
type AltchaState = 'error' | 'expired' | 'verified' | 'verifying' | 'unverified';
|
||||
|
||||
interface AltchaStateChangeEvent extends CustomEvent<{
|
||||
payload?: string;
|
||||
state: AltchaState;
|
||||
}> {}
|
||||
|
||||
interface AltchaVerifiedEvent extends CustomEvent<{
|
||||
payload: string;
|
||||
}> {}
|
||||
|
||||
interface AltchaServerVerificationEvent extends CustomEvent<Record<string, unknown>> {}
|
||||
|
||||
interface AltchaWidgetOptions {
|
||||
auto?: 'off' | 'onfocus' | 'onload' | 'onsubmit';
|
||||
/** @deprecated */
|
||||
blockspam?: boolean;
|
||||
challengeurl?: string;
|
||||
challengejson?: string;
|
||||
credentials?: 'omit' | 'same-origin' | 'include' | boolean | undefined;
|
||||
customfetch?: string | ((url: string, init?: RequestInit) => Promise<Response>);
|
||||
debug?: boolean;
|
||||
delay?: number;
|
||||
disableautofocus?: boolean;
|
||||
expire?: number;
|
||||
floating?: 'auto' | 'top' | 'bottom' | 'false' | '' | boolean;
|
||||
floatinganchor?: string;
|
||||
floatingoffset?: number;
|
||||
floatingpersist?: 'focus' | boolean;
|
||||
hidefooter?: boolean;
|
||||
hidelogo?: boolean;
|
||||
id?: string;
|
||||
language?: string;
|
||||
maxnumber?: number;
|
||||
mockerror?: boolean;
|
||||
name?: string;
|
||||
obfuscated?: string;
|
||||
oncleartext?: (ev: CustomEvent) => void;
|
||||
onload?: (ev: CustomEvent) => void;
|
||||
onstatechange?: (ev: CustomEvent) => void;
|
||||
onverified?: (ev: CustomEvent) => void;
|
||||
onserververification?: (ev: CustomEvent) => void;
|
||||
onupload?: (ev: CustomEvent) => void;
|
||||
onuploadprogress?: (ev: CustomEvent) => void;
|
||||
plugins?: string;
|
||||
refetchonexpire?: boolean;
|
||||
/** @deprecated */
|
||||
spamfilter?: boolean | 'ipAddress';
|
||||
strings?: string;
|
||||
test?: boolean | number;
|
||||
verifyurl?: string;
|
||||
workers?: number;
|
||||
workerurl?: string;
|
||||
}
|
||||
|
||||
interface AltchaWidgetMethods {
|
||||
configure: (options: AltchaWidgetOptions) => void;
|
||||
clarify: () => Promise<void>;
|
||||
getConfiguration: () => AltchaWidgetOptions;
|
||||
getFloatingAnchor: () => HTMLElement | null;
|
||||
getPlugin: <T = unknown>(name: string) => T;
|
||||
getState: () => AltchaState;
|
||||
hide: () => void;
|
||||
repositionFloating: (viewportOffset?: number) => void;
|
||||
reset: (newState?: AltchaState, err?: string | null) => void;
|
||||
setFloatingAnchor: (el: HTMLElement) => void;
|
||||
setState: (newState: AltchaState, err?: string | null) => void;
|
||||
show: () => void;
|
||||
verify: () => Promise<void>;
|
||||
}
|
||||
|
||||
interface AltchaWidget extends AltchaWidgetOptions {
|
||||
}
|
||||
|
||||
interface AltchaWidgetCSSProperties extends Partial<CSSStyleDeclaration> {
|
||||
'--altcha-border-width'?: string;
|
||||
'--altcha-border-radius'?: string;
|
||||
'--altcha-color-base'?: string;
|
||||
'--altcha-color-border'?: string;
|
||||
'--altcha-color-text'?: string;
|
||||
'--altcha-color-border-focus'?: string;
|
||||
'--altcha-color-error-text'?: string;
|
||||
'--altcha-color-footer-bg'?: string;
|
||||
'--altcha-max-width'?: string;
|
||||
}
|
||||
|
||||
interface AltchaWidgetReactRefObject<T> {
|
||||
current: T | null;
|
||||
}
|
||||
|
||||
interface AltchaWidgetReact extends AltchaWidget {
|
||||
children?: string | number | Node | DocumentFragment;
|
||||
ref?: AltchaWidgetReactRefObject<HTMLElement>;
|
||||
style?: AltchaWidgetCSSProperties;
|
||||
}
|
||||
|
||||
namespace JSX {
|
||||
interface IntrinsicElements {
|
||||
'altcha-widget': AltchaWidgetReact;
|
||||
}
|
||||
}
|
||||
|
||||
namespace React {
|
||||
namespace JSX {
|
||||
interface IntrinsicElements {
|
||||
'altcha-widget': AltchaWidgetReact;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
namespace svelteHTML {
|
||||
interface IntrinsicElements {
|
||||
'altcha-widget': AltchaWidgetSvelte;
|
||||
}
|
||||
|
||||
interface AltchaWidgetSvelte extends AltchaWidget {
|
||||
style?: string;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
declare module "react" {
|
||||
namespace JSX {
|
||||
interface IntrinsicElements {
|
||||
'altcha-widget': AltchaWidgetReact;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
declare module "react/jsx-runtime" {
|
||||
namespace JSX {
|
||||
interface IntrinsicElements {
|
||||
'altcha-widget': AltchaWidgetReact;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
declare module "react/jsx-dev-runtime" {
|
||||
namespace JSX {
|
||||
interface IntrinsicElements {
|
||||
'altcha-widget': AltchaWidgetReact;
|
||||
}
|
||||
}
|
||||
}
|
||||
4015
dist/altcha.i18n.js
vendored
Normal file
4015
dist/altcha.i18n.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
dist/altcha.i18n.umd.js
vendored
Normal file
4
dist/altcha.i18n.umd.js
vendored
Normal file
File diff suppressed because one or more lines are too long
3726
dist/altcha.js
vendored
3726
dist/altcha.js
vendored
File diff suppressed because one or more lines are too long
15
dist/altcha.umd.cjs
vendored
15
dist/altcha.umd.cjs
vendored
File diff suppressed because one or more lines are too long
@@ -1,139 +1 @@
|
||||
.altcha {
|
||||
background: var(--altcha-color-base, transparent);
|
||||
border: var(--altcha-border-width, 1px) solid
|
||||
var(--altcha-color-border, #a0a0a0);
|
||||
border-radius: var(--altcha-border-radius, 3px);
|
||||
color: var(--altcha-color-text, currentColor);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
max-width: var(--altcha-max-width, 260px);
|
||||
position: relative;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.altcha:focus-within {
|
||||
border-color: var(--altcha-color-border-focus, currentColor);
|
||||
}
|
||||
|
||||
.altcha[data-floating] {
|
||||
background: var(--altcha-color-base, white);
|
||||
display: none;
|
||||
filter: drop-shadow(3px 3px 6px rgba(0,0,0,0.2));
|
||||
left: -100%;
|
||||
position: fixed;
|
||||
top: -100%;
|
||||
width: var(--altcha-max-width, 260px);
|
||||
z-index: 999999;
|
||||
}
|
||||
|
||||
.altcha[data-floating="top"] .altcha-anchor-arrow {
|
||||
border-bottom-color: transparent;
|
||||
border-top-color: var(--altcha-color-border, #a0a0a0);
|
||||
bottom: -12px;
|
||||
top: auto;
|
||||
}
|
||||
|
||||
.altcha[data-floating="bottom"]:focus-within::after {
|
||||
border-bottom-color: var(--altcha-color-border-focus, currentColor);
|
||||
}
|
||||
|
||||
.altcha[data-floating="top"]:focus-within::after {
|
||||
border-top-color: var(--altcha-color-border-focus, currentColor);
|
||||
}
|
||||
|
||||
.altcha[data-floating]:not([data-state="unverified"]) {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.altcha-anchor-arrow {
|
||||
border: 6px solid transparent;
|
||||
border-bottom-color: var(--altcha-color-border, #a0a0a0);
|
||||
content: '';
|
||||
height: 0;
|
||||
left: 12px;
|
||||
position: absolute;
|
||||
top: -12px;
|
||||
width: 0;
|
||||
}
|
||||
|
||||
.altcha-main {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
gap: 0.4rem;
|
||||
padding: 0.7rem;
|
||||
}
|
||||
|
||||
.altcha-label {
|
||||
flex-grow: 1;
|
||||
}
|
||||
|
||||
.altcha-label label {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.altcha-logo {
|
||||
color: currentColor;
|
||||
opacity: 0.3;
|
||||
}
|
||||
|
||||
.altcha-logo:hover {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.altcha-error {
|
||||
color: var(--altcha-color-error-text, #f23939);
|
||||
display: flex;
|
||||
font-size: 0.85rem;
|
||||
gap: 0.3rem;
|
||||
padding: 0 0.7rem 0.7rem;
|
||||
}
|
||||
|
||||
.altcha-footer {
|
||||
align-items: center;
|
||||
background-color: var(--altcha-color-footer-bg, transparent);
|
||||
display: flex;
|
||||
font-size: 0.75rem;
|
||||
opacity: 0.4;
|
||||
padding: 0.2rem 0.7rem;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.altcha-footer:hover {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.altcha-footer > *:first-child {
|
||||
flex-grow: 1;
|
||||
}
|
||||
|
||||
.altcha-footer :global(a) {
|
||||
color: currentColor;
|
||||
}
|
||||
|
||||
.altcha-checkbox {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: 24px;
|
||||
width: 24px;
|
||||
}
|
||||
|
||||
.altcha-checkbox input {
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.altcha-hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.altcha-spinner {
|
||||
animation: altcha-spinner 0.75s infinite linear;
|
||||
transform-origin: center;
|
||||
}
|
||||
|
||||
@keyframes altcha-spinner {
|
||||
100% {
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
.altcha{background:var(--altcha-color-base, transparent);border:var(--altcha-border-width, 1px) solid var(--altcha-color-border, #a0a0a0);border-radius:var(--altcha-border-radius, 3px);color:var(--altcha-color-text, currentColor);display:flex;flex-direction:column;max-width:var(--altcha-max-width, 260px);position:relative}.altcha:focus-within{border-color:var(--altcha-color-border-focus, currentColor)}.altcha[data-floating]{background:var(--altcha-color-base, white);display:none;filter:drop-shadow(3px 3px 6px rgba(0,0,0,.2));left:-100%;position:fixed;top:-100%;width:var(--altcha-max-width, 260px);z-index:999999}.altcha[data-floating=top] .altcha-anchor-arrow{border-bottom-color:transparent;border-top-color:var(--altcha-color-border, #a0a0a0);bottom:-12px;top:auto}.altcha[data-floating=bottom]:focus-within:after{border-bottom-color:var(--altcha-color-border-focus, currentColor)}.altcha[data-floating=top]:focus-within:after{border-top-color:var(--altcha-color-border-focus, currentColor)}.altcha[data-floating]:not([data-state=unverified]){display:block}.altcha-anchor-arrow{border:6px solid transparent;border-bottom-color:var(--altcha-color-border, #a0a0a0);content:"";height:0;left:12px;position:absolute;top:-12px;width:0}.altcha-main{align-items:center;display:flex;gap:.4rem;padding:.7rem;position:relative}.altcha-code-challenge{background:var(--altcha-color-base, white);border:1px solid var(--altcha-color-border-focus, currentColor);border-radius:var(--altcha-border-radius, 3px);filter:drop-shadow(3px 3px 6px rgba(0,0,0,.2));padding:.5rem;position:absolute;top:2.5rem;z-index:9999999}.altcha-code-challenge>form{display:flex;flex-direction:column;gap:.5rem}.altcha-code-challenge-input{border:1px solid currentColor;border-radius:3px;box-sizing:border-box;outline:none;font-size:16px;padding:.35rem;width:220px}.altcha-code-challenge-input:focus{outline:2px solid color-mix(in srgb,var(--altcha-color-active, #1D1DC9) 20%,transparent)}.altcha-code-challenge-input:disabled{opacity:.7}.altcha-code-challenge-image{background-color:#fff;border:1px solid currentColor;border-radius:3px;box-sizing:border-box;object-fit:contain;height:50px;width:220px}.altcha-code-challenge-audio,.altcha-code-challenge-reload{background:color-mix(in srgb,var(--altcha-color-text, currentColor) 10%,transparent);border:0;border-radius:3px;color:var(--altcha-color-text, currentColor);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.35rem}.altcha-code-challenge-audio:disabled,.altcha-code-challenge-reload:disabled{opacity:.7;pointer-events:none}.altcha-code-challenge-audio>*,.altcha-code-challenge-reload>*{height:20px;width:20px}.altcha-code-challenge-buttons{display:flex;justify-content:space-between}.altcha-code-challenge-buttons-left{display:flex;gap:.25rem}.altcha-code-challenge-verify{align-items:center;background:var(--altcha-color-active, #1D1DC9);border:0;border-radius:3px;color:#fff;cursor:pointer;display:flex;gap:.5rem;font-size:100%;padding:.35rem 1rem}.altcha-code-challenge-verify:disabled{opacity:.7;pointer-events:none}.altcha-code-challenge-arrow{border:6px solid transparent;border-bottom-color:var(--altcha-color-border, currentColor);content:"";height:0;left:.15rem;position:absolute;top:-12px;width:0}.altcha[data-floating=top] .altcha-code-challenge{top:-150px}.altcha[data-floating=top] .altcha-code-challenge-arrow{border-bottom-color:transparent;border-top-color:var(--altcha-color-border, currentColor);bottom:-12px;top:auto}.altcha-label{cursor:pointer;flex-grow:1}.altcha-logo{color:currentColor!important;opacity:.7}.altcha-logo:hover{opacity:1}.altcha-error{color:var(--altcha-color-error-text, #f23939);display:flex;font-size:.85rem;gap:.3rem;padding:0 .7rem .7rem}.altcha-footer{align-items:center;background-color:var(--altcha-color-footer-bg, transparent);display:flex;font-size:.75rem;opacity:.7;justify-content:end;padding:.2rem .7rem}.altcha-footer:hover{opacity:1}.altcha-footer a{color:currentColor}.altcha-checkbox{display:flex;align-items:center;justify-content:center;height:24px;position:relative;width:24px}.altcha-checkbox .altcha-spinner{bottom:0;left:0;position:absolute;right:0;top:0}.altcha-checkbox input{width:18px;height:18px;margin:0}.altcha-checkbox-verifying input{-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;pointer-events:none}.altcha-spinner{animation:altcha-spinner .75s infinite linear;transform-origin:center}@keyframes altcha-spinner{to{transform:rotate(360deg)}}
|
||||
|
||||
11
dist_external/altcha.d.ts
vendored
11
dist_external/altcha.d.ts
vendored
@@ -1,3 +1,4 @@
|
||||
import type { Writable } from 'svelte/store';
|
||||
export {};
|
||||
|
||||
declare module 'altcha';
|
||||
@@ -5,6 +6,11 @@ declare module 'altcha';
|
||||
declare global {
|
||||
var altchaCreateWorker: (url?: string) => Worker;
|
||||
var altchaPlugins: any[];
|
||||
var altchaI18n: {
|
||||
get: (language: string) => Record<string, string>;
|
||||
set: (language: string, translation: Record<string, string>) => void;
|
||||
store: Writable<Record<string, Record<string, string>>>;
|
||||
};
|
||||
|
||||
type AltchaState = 'error' | 'expired' | 'verified' | 'verifying' | 'unverified';
|
||||
|
||||
@@ -21,12 +27,15 @@ declare global {
|
||||
|
||||
interface AltchaWidgetOptions {
|
||||
auto?: 'off' | 'onfocus' | 'onload' | 'onsubmit';
|
||||
/** @deprecated */
|
||||
blockspam?: boolean;
|
||||
challengeurl?: string;
|
||||
challengejson?: string;
|
||||
credentials?: 'omit' | 'same-origin' | 'include' | boolean | undefined;
|
||||
customfetch?: string | ((url: string, init?: RequestInit) => Promise<Response>);
|
||||
debug?: boolean;
|
||||
delay?: number;
|
||||
disableautofocus?: boolean;
|
||||
expire?: number;
|
||||
floating?: 'auto' | 'top' | 'bottom' | 'false' | '' | boolean;
|
||||
floatinganchor?: string;
|
||||
@@ -35,6 +44,7 @@ declare global {
|
||||
hidefooter?: boolean;
|
||||
hidelogo?: boolean;
|
||||
id?: string;
|
||||
language?: string;
|
||||
maxnumber?: number;
|
||||
mockerror?: boolean;
|
||||
name?: string;
|
||||
@@ -48,6 +58,7 @@ declare global {
|
||||
onuploadprogress?: (ev: CustomEvent) => void;
|
||||
plugins?: string;
|
||||
refetchonexpire?: boolean;
|
||||
/** @deprecated */
|
||||
spamfilter?: boolean | 'ipAddress';
|
||||
strings?: string;
|
||||
test?: boolean | number;
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
dist_i18n/af.d.ts
vendored
Normal file
1
dist_i18n/af.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/af';
|
||||
94
dist_i18n/af.js
Normal file
94
dist_i18n/af.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const o = () => {
|
||||
};
|
||||
function g(e, i) {
|
||||
return e != e ? i == i : e !== i || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(e) {
|
||||
var i = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = i;
|
||||
}
|
||||
}
|
||||
function k(e, i, t) {
|
||||
if (e == null)
|
||||
return i(void 0), o;
|
||||
const n = d(
|
||||
() => e.subscribe(
|
||||
i,
|
||||
// @ts-expect-error
|
||||
t
|
||||
)
|
||||
);
|
||||
return n.unsubscribe ? () => n.unsubscribe() : n;
|
||||
}
|
||||
const a = [];
|
||||
function p(e, i = o) {
|
||||
let t = null;
|
||||
const n = /* @__PURE__ */ new Set();
|
||||
function l(s) {
|
||||
if (g(e, s) && (e = s, t)) {
|
||||
const u = !a.length;
|
||||
for (const r of n)
|
||||
r[1](), a.push(r, e);
|
||||
if (u) {
|
||||
for (let r = 0; r < a.length; r += 2)
|
||||
a[r][0](a[r + 1]);
|
||||
a.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function b(s) {
|
||||
l(s(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function h(s, u = o) {
|
||||
const r = [s, u];
|
||||
return n.add(r), n.size === 1 && (t = i(l, b) || o), s(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
n.delete(r), n.size === 0 && t && (t(), t = null);
|
||||
};
|
||||
}
|
||||
return { set: l, update: b, subscribe: h };
|
||||
}
|
||||
function f(e) {
|
||||
let i;
|
||||
return k(e, (t) => i = t)(), i;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => f(globalThis.altchaI18n.store)[e],
|
||||
set: (e, i) => {
|
||||
Object.assign(f(globalThis.altchaI18n.store), {
|
||||
[e]: i
|
||||
}), globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: p({})
|
||||
};
|
||||
const T = {
|
||||
ariaLinkLabel: "Besoek Altcha.org",
|
||||
enterCode: "Voer kode in",
|
||||
enterCodeAria: "Voer die kode in wat jy hoor. Druk Spasie om die klank af te speel.",
|
||||
error: "Verifikasie het misluk. Probeer later weer.",
|
||||
expired: "Verifikasie het verval. Probeer weer.",
|
||||
footer: 'Beskerm deur <a href="https://altcha.org/" target="_blank" aria-label="Besoek Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Kry 'n klankuitdaging",
|
||||
label: "Ek is nie 'n robot nie",
|
||||
loading: "Laai...",
|
||||
reload: "Laai weer",
|
||||
verify: "Verifieer",
|
||||
verificationRequired: "Verifikasie is vereis!",
|
||||
verified: "Geverifieer",
|
||||
verifying: "Verifieer...",
|
||||
waitAlert: "Verifieer... wag asseblief."
|
||||
};
|
||||
globalThis.altchaI18n.set("af", T);
|
||||
export {
|
||||
T as i18n
|
||||
};
|
||||
1
dist_i18n/af.umd.cjs
Normal file
1
dist_i18n/af.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(l,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(l=typeof globalThis<"u"?globalThis:l||self,o(l["[name]"]={}))})(this,function(l){"use strict";const o=()=>{};function d(e,i){return e!=e?i==i:e!==i||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function k(e){var i=u;try{return u=!0,e()}finally{u=i}}function p(e,i,n){if(e==null)return i(void 0),o;const r=k(()=>e.subscribe(i,n));return r.unsubscribe?()=>r.unsubscribe():r}const a=[];function T(e,i=o){let n=null;const r=new Set;function c(s){if(d(e,s)&&(e=s,n)){const b=!a.length;for(const t of r)t[1](),a.push(t,e);if(b){for(let t=0;t<a.length;t+=2)a[t][0](a[t+1]);a.length=0}}}function g(s){c(s(e))}function y(s,b=o){const t=[s,b];return r.add(t),r.size===1&&(n=i(c,g)||o),s(e),()=>{r.delete(t),r.size===0&&n&&(n(),n=null)}}return{set:c,update:g,subscribe:y}}function f(e){let i;return p(e,n=>i=n)(),i}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>f(globalThis.altchaI18n.store)[e],set:(e,i)=>{Object.assign(f(globalThis.altchaI18n.store),{[e]:i}),globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store))},store:T({})};const h={ariaLinkLabel:"Besoek Altcha.org",enterCode:"Voer kode in",enterCodeAria:"Voer die kode in wat jy hoor. Druk Spasie om die klank af te speel.",error:"Verifikasie het misluk. Probeer later weer.",expired:"Verifikasie het verval. Probeer weer.",footer:'Beskerm deur <a href="https://altcha.org/" target="_blank" aria-label="Besoek Altcha.org">ALTCHA</a>',getAudioChallenge:"Kry 'n klankuitdaging",label:"Ek is nie 'n robot nie",loading:"Laai...",reload:"Laai weer",verify:"Verifieer",verificationRequired:"Verifikasie is vereis!",verified:"Geverifieer",verifying:"Verifieer...",waitAlert:"Verifieer... wag asseblief."};globalThis.altchaI18n.set("af",h),l.i18n=h,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/all.d.ts
vendored
Normal file
1
dist_i18n/all.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/all';
|
||||
992
dist_i18n/all.js
Normal file
992
dist_i18n/all.js
Normal file
@@ -0,0 +1,992 @@
|
||||
const n = () => {
|
||||
};
|
||||
function v(e, a) {
|
||||
return e != e ? a == a : e !== a || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let g = !1;
|
||||
function b(e) {
|
||||
var a = g;
|
||||
try {
|
||||
return g = !0, e();
|
||||
} finally {
|
||||
g = a;
|
||||
}
|
||||
}
|
||||
function A(e, a, r) {
|
||||
if (e == null)
|
||||
return a(void 0), n;
|
||||
const t = b(
|
||||
() => e.subscribe(
|
||||
a,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return t.unsubscribe ? () => t.unsubscribe() : t;
|
||||
}
|
||||
const l = [];
|
||||
function k(e, a = n) {
|
||||
let r = null;
|
||||
const t = /* @__PURE__ */ new Set();
|
||||
function d(o) {
|
||||
if (v(e, o) && (e = o, r)) {
|
||||
const s = !l.length;
|
||||
for (const i of t)
|
||||
i[1](), l.push(i, e);
|
||||
if (s) {
|
||||
for (let i = 0; i < l.length; i += 2)
|
||||
l[i][0](l[i + 1]);
|
||||
l.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function h(o) {
|
||||
d(o(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function u(o, s = n) {
|
||||
const i = [o, s];
|
||||
return t.add(i), t.size === 1 && (r = a(d, h) || n), o(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
t.delete(i), t.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: d, update: h, subscribe: u };
|
||||
}
|
||||
function c(e) {
|
||||
let a;
|
||||
return A(e, (r) => a = r)(), a;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => c(globalThis.altchaI18n.store)[e],
|
||||
set: (e, a) => {
|
||||
Object.assign(c(globalThis.altchaI18n.store), {
|
||||
[e]: a
|
||||
}), globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: k({})
|
||||
};
|
||||
const p = {
|
||||
ariaLinkLabel: "Besoek Altcha.org",
|
||||
enterCode: "Voer kode in",
|
||||
enterCodeAria: "Voer die kode in wat jy hoor. Druk Spasie om die klank af te speel.",
|
||||
error: "Verifikasie het misluk. Probeer later weer.",
|
||||
expired: "Verifikasie het verval. Probeer weer.",
|
||||
footer: 'Beskerm deur <a href="https://altcha.org/" target="_blank" aria-label="Besoek Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Kry 'n klankuitdaging",
|
||||
label: "Ek is nie 'n robot nie",
|
||||
loading: "Laai...",
|
||||
reload: "Laai weer",
|
||||
verify: "Verifieer",
|
||||
verificationRequired: "Verifikasie is vereis!",
|
||||
verified: "Geverifieer",
|
||||
verifying: "Verifieer...",
|
||||
waitAlert: "Verifieer... wag asseblief."
|
||||
};
|
||||
globalThis.altchaI18n.set("af", p);
|
||||
const C = {
|
||||
ariaLinkLabel: "زور Altcha.org",
|
||||
enterCode: "أدخل الرمز",
|
||||
enterCodeAria: "أدخل الرمز الذي تسمعه. اضغط على المسافة لتشغيل الصوت.",
|
||||
error: "فشل التحقق. حاول مرة أخرى لاحقاً.",
|
||||
expired: "انتهت صلاحية التحقق. حاول مرة أخرى.",
|
||||
verificationRequired: "مطلوب التحقق!",
|
||||
footer: 'محمي بواسطة <a href="https://altcha.org/" target="_blank" aria-label="زور Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "احصل على تحدي صوتي",
|
||||
label: "أنا لست روبوتاً",
|
||||
loading: "جارٍ التحميل...",
|
||||
reload: "إعادة تحميل",
|
||||
verify: "تحقق",
|
||||
verified: "تم التحقق",
|
||||
verifying: "جارٍ التحقق...",
|
||||
waitAlert: "جارٍ التحقق... يرجى الانتظار."
|
||||
};
|
||||
globalThis.altchaI18n.set("ar", C);
|
||||
const y = {
|
||||
ariaLinkLabel: "Посетете Altcha.org",
|
||||
enterCode: "Въведете код",
|
||||
enterCodeAria: "Въведете кода, който чувате. Натиснете Space за възпроизвеждане на аудио.",
|
||||
error: "Проверката неуспешна. Моля, опитайте по-късно.",
|
||||
expired: "Времето за проверка изтече. Моля, опитайте отново.",
|
||||
verificationRequired: "Изисква се проверка!",
|
||||
footer: 'Защитено от <a href="https://altcha.org/" target="_blank" aria-label="Посетете Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Аудио проверка",
|
||||
label: "Аз не съм робот",
|
||||
loading: "Зареждане...",
|
||||
reload: "Презареди",
|
||||
verify: "Провери",
|
||||
verified: "Проверено",
|
||||
verifying: "Проверява се...",
|
||||
waitAlert: "Проверката е в процес... моля изчакайте."
|
||||
};
|
||||
globalThis.altchaI18n.set("bg", y);
|
||||
const L = {
|
||||
ariaLinkLabel: "Posjetite Altcha.org",
|
||||
enterCode: "Unesite kod",
|
||||
enterCodeAria: "Unesite kod koji čujete. Pritisnite Space da biste pustili zvuk.",
|
||||
error: "Verifikacija nije uspjela. Pokušajte ponovo kasnije.",
|
||||
expired: "Verifikacija je istekla. Pokušajte ponovo.",
|
||||
footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posjetite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Dohvatite audio izazov",
|
||||
label: "Nisam robot",
|
||||
loading: "Učitavanje...",
|
||||
reload: "Ponovno učitaj",
|
||||
verify: "Verifikuj",
|
||||
verificationRequired: "Verifikacija je obavezna!",
|
||||
verified: "Verifikovano",
|
||||
verifying: "Verifikacija u toku...",
|
||||
waitAlert: "Verifikacija u toku... molimo vas da sačekate."
|
||||
};
|
||||
globalThis.altchaI18n.set("bs", L);
|
||||
const V = {
|
||||
ariaLinkLabel: "Visita Altcha.org",
|
||||
enterCode: "Introdueix el codi",
|
||||
enterCodeAria: "Introdueix el codi que escoltes. Prem Espai per reproduir l’àudio.",
|
||||
error: "Verificació fallida. Torna-ho a provar més tard.",
|
||||
expired: "Verificació expirada. Torna-ho a provar.",
|
||||
footer: 'Protegit per <a href="https://altcha.org/" target="_blank" aria-label="Visita Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtenir un desafiament d’àudio",
|
||||
label: "No sóc un robot",
|
||||
loading: "Carregant...",
|
||||
reload: "Torna a carregar",
|
||||
verify: "Verificar",
|
||||
verificationRequired: "Es requereix verificació!",
|
||||
verified: "Verificat",
|
||||
verifying: "Verificant...",
|
||||
waitAlert: "Verificant... si us plau, espera."
|
||||
};
|
||||
globalThis.altchaI18n.set("ca", V);
|
||||
const j = {
|
||||
ariaLinkLabel: "Navštivte Altcha.org",
|
||||
enterCode: "Zadejte kód",
|
||||
enterCodeAria: "Zadejte kód, který slyšíte. Stisknutím mezerníku přehrajete zvuk.",
|
||||
error: "Ověření selhalo. Zkuste to prosím později.",
|
||||
expired: "Ověření vypršelo. Zkuste to prosím znovu.",
|
||||
verificationRequired: "Vyžaduje se ověření!",
|
||||
footer: 'Chráněno pomocí <a href="https://altcha.org/" target="_blank" aria-label="Navštivte Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Získat audio výzvu",
|
||||
label: "Nejsem robot",
|
||||
loading: "Načítání...",
|
||||
reload: "Znovu načíst",
|
||||
verify: "Ověřit",
|
||||
verified: "Ověřeno",
|
||||
verifying: "Ověřování...",
|
||||
waitAlert: "Probíhá ověření... prosím počkejte."
|
||||
};
|
||||
globalThis.altchaI18n.set("cs", j);
|
||||
const m = {
|
||||
ariaLinkLabel: "Besøg Altcha.org",
|
||||
enterCode: "Indtast kode",
|
||||
enterCodeAria: "Indtast den kode, du hører. Tryk på mellemrumstasten for at afspille lyd.",
|
||||
error: "Verificering mislykkedes. Prøv venligst igen senere.",
|
||||
expired: "Verificering udløbet. Prøv venligst igen.",
|
||||
verificationRequired: "Verificering kræves!",
|
||||
footer: 'Beskyttet af <a href="https://altcha.org/" target="_blank" aria-label="Besøg Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Hent lydudfordring",
|
||||
label: "Jeg er ikke en robot",
|
||||
loading: "Indlæser...",
|
||||
reload: "Genindlæs",
|
||||
verify: "Verificer",
|
||||
verified: "Verificeret",
|
||||
verifying: "Verificerer...",
|
||||
waitAlert: "Verificerer... vent venligst."
|
||||
};
|
||||
globalThis.altchaI18n.set("da", m);
|
||||
const T = {
|
||||
ariaLinkLabel: "Besuche Altcha.org",
|
||||
enterCode: "Code eingeben",
|
||||
enterCodeAria: "Geben Sie den Code ein, den Sie hören. Drücken Sie die Leertaste, um die Audio abzuspielen.",
|
||||
error: "Überprüfung fehlgeschlagen. Bitte versuchen Sie es später erneut.",
|
||||
expired: "Überprüfung abgelaufen. Bitte versuchen Sie es erneut.",
|
||||
verificationRequired: "Überprüfung erforderlich!",
|
||||
footer: 'Geschützt durch <a href="https://altcha.org/" target="_blank" aria-label="Besuche Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Audio-Herausforderung anfordern",
|
||||
label: "Ich bin kein Roboter",
|
||||
loading: "Lade...",
|
||||
reload: "Neu laden",
|
||||
verify: "Überprüfen",
|
||||
verified: "Überprüft",
|
||||
verifying: "Wird überprüft...",
|
||||
waitAlert: "Überprüfung läuft... bitte warten."
|
||||
};
|
||||
globalThis.altchaI18n.set("de", T);
|
||||
const z = {
|
||||
ariaLinkLabel: "Επισκεφθείτε το Altcha.org",
|
||||
enterCode: "Εισαγάγετε κωδικό",
|
||||
enterCodeAria: "Εισαγάγετε τον κωδικό που ακούτε. Πατήστε Space για να παίξετε τον ήχο.",
|
||||
error: "Η επαλήθευση απέτυχε. Δοκιμάστε ξανά αργότερα.",
|
||||
expired: "Η επαλήθευση έληξε. Δοκιμάστε ξανά.",
|
||||
verificationRequired: "Απαιτείται έλεγχος!",
|
||||
footer: 'Προστατεύεται από το <a href="https://altcha.org/" target="_blank" aria-label="Επισκεφθείτε το Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Λήψη ηχητικής δοκιμασίας",
|
||||
label: "Δεν είμαι ρομπότ",
|
||||
loading: "Φόρτωση...",
|
||||
reload: "Επαναφόρτωση",
|
||||
verify: "Επαλήθευση",
|
||||
verified: "Επαληθεύτηκε",
|
||||
verifying: "Γίνεται επαλήθευση...",
|
||||
waitAlert: "Γίνεται επαλήθευση... παρακαλώ περιμένετε."
|
||||
};
|
||||
globalThis.altchaI18n.set("el", z);
|
||||
const I = {
|
||||
ariaLinkLabel: "Visitar Altcha.org",
|
||||
enterCode: "Introduce el código",
|
||||
enterCodeAria: "Introduce el código que escuchas. Pulsa Espacio para reproducir el audio.",
|
||||
error: "Falló la verificación. Por favor intente nuevamente más tarde.",
|
||||
expired: "Verificación expirada. Por favor intente nuevamente.",
|
||||
verificationRequired: "¡Verificación requerida!",
|
||||
footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtener un desafío de audio",
|
||||
label: "No soy un robot",
|
||||
loading: "Cargando...",
|
||||
reload: "Recargar",
|
||||
verify: "Verificar",
|
||||
verified: "Verificado",
|
||||
verifying: "Verificando...",
|
||||
waitAlert: "Verificando... por favor espere."
|
||||
};
|
||||
globalThis.altchaI18n.set("es-es", I);
|
||||
const P = {
|
||||
ariaLinkLabel: "Visitar Altcha.org",
|
||||
enterCode: "Ingresa el código",
|
||||
enterCodeAria: "Ingresa el código que escuchas. Presiona Espacio para reproducir el audio.",
|
||||
error: "Falló la verificación. Por favor vuelve a intentarlo más tarde.",
|
||||
expired: "La verificación expiró. Por favor inténtalo de nuevo.",
|
||||
verificationRequired: "¡Verificación requerida!",
|
||||
footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtener un reto de audio",
|
||||
label: "No soy un robot",
|
||||
loading: "Cargando...",
|
||||
reload: "Volver a cargar",
|
||||
verify: "Verificar",
|
||||
verified: "Verificado",
|
||||
verifying: "Verificando...",
|
||||
waitAlert: "Verificando... por favor espera."
|
||||
};
|
||||
globalThis.altchaI18n.set("es-419", P);
|
||||
const w = {
|
||||
ariaLinkLabel: "Külasta Altcha.org",
|
||||
enterCode: "Sisesta kood",
|
||||
enterCodeAria: "Sisestage kuuldu kood. Vajutage tühikut, et esitada heli.",
|
||||
error: "Kinnitamine ebaõnnestus. Proovi hiljem uuesti.",
|
||||
expired: "Kinnitamine aegus. Proovi uuesti.",
|
||||
verificationRequired: "Kontroll on vajalik!",
|
||||
footer: 'Kaitstud <a href="https://altcha.org/" target="_blank" aria-label="Külasta Altcha.org">ALTCHA</a> poolt',
|
||||
getAudioChallenge: "Hangi heliülesanne",
|
||||
label: "Ma ei ole robot",
|
||||
loading: "Laadimine...",
|
||||
reload: "Laadi uuesti",
|
||||
verify: "Kinnita",
|
||||
verified: "Kinnitatud",
|
||||
verifying: "Kinnitamine...",
|
||||
waitAlert: "Kinnitamine... palun oota."
|
||||
};
|
||||
globalThis.altchaI18n.set("et", w);
|
||||
const x = {
|
||||
ariaLinkLabel: "Bisitatu Altcha.org",
|
||||
enterCode: "Sartu kodea",
|
||||
enterCodeAria: "Sartu entzun duzun kodea. Sakatu Espazioa audioa erreproduzitzeko.",
|
||||
error: "Egiaztatzeak huts egin du. Saiatu berriro geroago.",
|
||||
expired: "Egiaztatzea iraungi da. Saiatu berriro.",
|
||||
verificationRequired: "Egiaztatzea beharrezkoa da!",
|
||||
footer: '<a href="https://altcha.org/" target="_blank" aria-label="Bisitatu Altcha.org">ALTCHA</a>k babestuta',
|
||||
getAudioChallenge: "Jaso audio-erronka bat",
|
||||
label: "Ez naiz robot bat",
|
||||
loading: "Kargatzen...",
|
||||
reload: "Birkargatu",
|
||||
verify: "Egiaztatu",
|
||||
verified: "Egiaztatuta",
|
||||
verifying: "Egiaztatzen...",
|
||||
waitAlert: "Egiaztatzen... itxaron mesedez."
|
||||
};
|
||||
globalThis.altchaI18n.set("eu", x);
|
||||
const q = {
|
||||
ariaLinkLabel: "Vieraile sivulla Altcha.org",
|
||||
enterCode: "Syötä koodi",
|
||||
enterCodeAria: "Kirjoita kuulemasi koodi. Paina välilyöntiä toistaaksesi äänen.",
|
||||
error: "Varmennus epäonnistui. Yritä myöhemmin uudelleen.",
|
||||
expired: "Varmennus vanhentui. Yritä uudelleen.",
|
||||
verificationRequired: "Vahvistus vaaditaan!",
|
||||
footer: 'Suojattu <a href="https://altcha.org/" target="_blank" aria-label="Vieraile sivulla Altcha.org">ALTCHA</a>:lla',
|
||||
getAudioChallenge: "Hae äänitehtävä",
|
||||
label: "En ole robotti",
|
||||
loading: "Ladataan...",
|
||||
reload: "Lataa uudelleen",
|
||||
verify: "Vahvista",
|
||||
verified: "Vahvistettu",
|
||||
verifying: "Vahvistetaan...",
|
||||
waitAlert: "Vahvistetaan... odota hetki."
|
||||
};
|
||||
globalThis.altchaI18n.set("fi", q);
|
||||
const R = {
|
||||
ariaLinkLabel: "Visitez Altcha.org",
|
||||
enterCode: "Entrez le code",
|
||||
enterCodeAria: "Entrez le code que vous entendez. Appuyez sur la barre d'espace pour écouter l'audio.",
|
||||
error: "Échec de la vérification. Réessayez plus tard.",
|
||||
expired: "La vérification a expiré. Réessayez.",
|
||||
verificationRequired: "Vérification requise !",
|
||||
footer: 'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtenir un défi audio",
|
||||
label: "Pas un robot",
|
||||
loading: "Chargement...",
|
||||
reload: "Recharger",
|
||||
verify: "Vérifier",
|
||||
verified: "Vérifié",
|
||||
verifying: "Vérification en cours...",
|
||||
waitAlert: "Vérification en cours... veuillez patienter."
|
||||
};
|
||||
globalThis.altchaI18n.set("fr-ca", R);
|
||||
const H = {
|
||||
ariaLinkLabel: "Visitez Altcha.org",
|
||||
enterCode: "Entrez le code",
|
||||
enterCodeAria: "Entrez le code que vous entendez. Appuyez sur Espace pour écouter l'audio.",
|
||||
error: "Échec de la vérification. Essayez à nouveau plus tard.",
|
||||
expired: "La vérification a expiré. Essayez à nouveau.",
|
||||
verificationRequired: "Vérification requise !",
|
||||
footer: 'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtenir un défi audio",
|
||||
label: "Pas un robot",
|
||||
loading: "Chargement...",
|
||||
reload: "Recharger",
|
||||
verify: "Vérifier",
|
||||
verified: "Vérifié",
|
||||
verifying: "Vérification en cours...",
|
||||
waitAlert: "Vérification en cours... veuillez patienter."
|
||||
};
|
||||
globalThis.altchaI18n.set("fr-fr", H);
|
||||
const _ = {
|
||||
ariaLinkLabel: "Tabhair cuairt ar Altcha.org",
|
||||
enterCode: "Iontráil cód",
|
||||
enterCodeAria: "Cuir isteach an cód a chloiseann tú. Brúigh Spás chun an fuaime a sheinm.",
|
||||
error: "Theip ar an bhfíorú. Bain triail eile as níos déanaí.",
|
||||
expired: "Tá an fíorú as feidhm. Bain triail eile as.",
|
||||
verificationRequired: "Fíorú riachtanach!",
|
||||
footer: 'Cosanta ag <a href="https://altcha.org/" target="_blank" aria-label="Tabhair cuairt ar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Faigh dúshlán fuaime",
|
||||
label: "Níl mé i mo róbat",
|
||||
loading: "Á luchtú...",
|
||||
reload: "Athluchtaigh",
|
||||
verify: "Fíoraigh",
|
||||
verified: "Fíoraithe",
|
||||
verifying: "Fíorú ar siúl...",
|
||||
waitAlert: "Fíorú ar siúl... fan go fóill."
|
||||
};
|
||||
globalThis.altchaI18n.set("ga", _);
|
||||
const S = {
|
||||
ariaLinkLabel: "Posjetite Altcha.org",
|
||||
enterCode: "Unesite kod",
|
||||
enterCodeAria: "Unesite kod koji čujete. Pritisnite razmaknicu za reprodukciju zvuka.",
|
||||
error: "Provjera nije uspjela. Molimo pokušajte kasnije.",
|
||||
expired: "Provjera je istekla. Molimo pokušajte ponovo.",
|
||||
verificationRequired: "Potrebna je provjera!",
|
||||
footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posjetite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Audio provjera",
|
||||
label: "Ja nisam robot",
|
||||
loading: "Učitavanje...",
|
||||
reload: "Ponovno učitaj",
|
||||
verify: "Provjeri",
|
||||
verified: "Provjereno",
|
||||
verifying: "Provjeravanje...",
|
||||
waitAlert: "Provjera je u tijeku... molimo pričekajte."
|
||||
};
|
||||
globalThis.altchaI18n.set("hr", S);
|
||||
const $ = {
|
||||
ariaLinkLabel: "Látogass el az Altcha.org oldalra",
|
||||
enterCode: "Írja be a kódot",
|
||||
enterCodeAria: "Írja be a hallott kódot. Nyomja meg a Szóköz billentyűt a hang lejátszásához.",
|
||||
error: "A hitelesítés nem sikerült. Próbáld meg később újra.",
|
||||
expired: "A hitelesítés lejárt. Próbáld újra.",
|
||||
verificationRequired: "Ellenőrzés szükséges!",
|
||||
footer: 'Védve a következő által: <a href="https://altcha.org/" target="_blank" aria-label="Látogass el az Altcha.org oldalra">ALTCHA</a>',
|
||||
getAudioChallenge: "Hangalapú kihívás kérése",
|
||||
label: "Nem vagyok robot",
|
||||
loading: "Betöltés...",
|
||||
reload: "Újratöltés",
|
||||
verify: "Ellenőrzés",
|
||||
verified: "Ellenőrizve",
|
||||
verifying: "Ellenőrzés folyamatban...",
|
||||
waitAlert: "Ellenőrzés folyamatban... kérlek várj."
|
||||
};
|
||||
globalThis.altchaI18n.set("hu", $);
|
||||
const E = {
|
||||
ariaLinkLabel: "Heimsækja Altcha.org",
|
||||
enterCode: "Sláðu inn kóða",
|
||||
enterCodeAria: "Sláðu inn kóðann sem þú heyrir. Ýttu á Space til að spila hljóðið.",
|
||||
error: "Staðfesting mistókst. Reyndu aftur síðar.",
|
||||
expired: "Staðfesting er útrunnin. Reyndu aftur.",
|
||||
footer: 'Verndað af <a href="https://altcha.org/" target="_blank" aria-label="Heimsækja Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Fá hljóðáskorun",
|
||||
label: "Ég er ekki robot",
|
||||
loading: "Hleður...",
|
||||
reload: "Hleð aftur",
|
||||
verify: "Staðfesta",
|
||||
verificationRequired: "Staðfesting er nauðsynleg!",
|
||||
verified: "Staðfest",
|
||||
verifying: "Að staðfesta...",
|
||||
waitAlert: "Að staðfesta... vinsamlegast bíða."
|
||||
};
|
||||
globalThis.altchaI18n.set("is", E);
|
||||
const N = {
|
||||
ariaLinkLabel: "Visita Altcha.org",
|
||||
enterCode: "Inserisci il codice",
|
||||
enterCodeAria: "Inserisci il codice che senti. Premi Spazio per riprodurre l'audio.",
|
||||
error: "Verifica fallita. Riprova più tardi.",
|
||||
expired: "Verifica scaduta. Riprova.",
|
||||
verificationRequired: "Verifica richiesta!",
|
||||
footer: 'Protetto da <a href="https://altcha.org/" target="_blank" aria-label="Visita Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Ottieni una sfida audio",
|
||||
label: "Non sono un robot",
|
||||
loading: "Caricamento...",
|
||||
reload: "Ricarica",
|
||||
verify: "Verifica",
|
||||
verified: "Verificato",
|
||||
verifying: "Verifica in corso...",
|
||||
waitAlert: "Verifica in corso... attendere."
|
||||
};
|
||||
globalThis.altchaI18n.set("it", N);
|
||||
const B = {
|
||||
ariaLinkLabel: "Apsilankykite Altcha.org",
|
||||
enterCode: "Įveskite kodą",
|
||||
enterCodeAria: "Įveskite girdimą kodą. Paspauskite tarpo klavišą, kad grotumėte garso įrašą.",
|
||||
error: "Patvirtinimas nepavyko. Bandykite vėliau.",
|
||||
expired: "Patvirtinimo laikas baigėsi. Bandykite dar kartą.",
|
||||
verificationRequired: "Reikalingas patvirtinimas!",
|
||||
footer: 'Apsaugota <a href="https://altcha.org/" target="_blank" aria-label="Apsilankykite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Gauti garso užduotį",
|
||||
label: "Aš nesu robotas",
|
||||
loading: "Įkeliama...",
|
||||
reload: "Įkelti iš naujo",
|
||||
verify: "Patvirtinti",
|
||||
verified: "Patvirtinta",
|
||||
verifying: "Tikrinama...",
|
||||
waitAlert: "Tikrinama... prašome palaukti."
|
||||
};
|
||||
globalThis.altchaI18n.set("lt", B);
|
||||
const O = {
|
||||
ariaLinkLabel: "Apmeklējiet Altcha.org",
|
||||
enterCode: "Ievadiet kodu",
|
||||
enterCodeAria: "Ievadiet dzirdamo kodu. Nospiediet atstarpes taustiņu, lai atskaņotu audio.",
|
||||
error: "Verifikācija neizdevās. Mēģiniet vēlāk vēlreiz.",
|
||||
expired: "Verifikācijas laiks ir beidzies. Mēģiniet vēlreiz.",
|
||||
verificationRequired: "Nepieciešama verifikācija!",
|
||||
footer: 'Aizsargāts ar <a href="https://altcha.org/" target="_blank" aria-label="Apmeklējiet Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Saņemt audio izaicinājumu",
|
||||
label: "Es neesmu robots",
|
||||
loading: "Notiek ielāde...",
|
||||
reload: "Pārlādēt",
|
||||
verify: "Verificēt",
|
||||
verified: "Verificēts",
|
||||
verifying: "Notiek verifikācija...",
|
||||
waitAlert: "Notiek verifikācija... lūdzu, uzgaidiet."
|
||||
};
|
||||
globalThis.altchaI18n.set("lv", O);
|
||||
const D = {
|
||||
ariaLinkLabel: "Żur Altcha.org",
|
||||
enterCode: "Idħol il-kodiċi",
|
||||
enterCodeAria: "Idħol il-kodiċi li tisma'. Agħfas Spazju biex tindaqq l-awdjo.",
|
||||
error: "Il-verifika falliet. Erġa’ pprova aktar tard.",
|
||||
expired: "Il-verifika skadiet. Erġa’ pprova.",
|
||||
verificationRequired: "Verifika meħtieġa!",
|
||||
footer: 'Protett minn <a href="https://altcha.org/" target="_blank" aria-label="Żur Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Ikseb sfida bl-awdjo",
|
||||
label: "M’inix robot",
|
||||
loading: "Qed jitgħabba...",
|
||||
reload: "Ittella’ mill-ġdid",
|
||||
verify: "Ivverifika",
|
||||
verified: "Ivverifikat",
|
||||
verifying: "Verifika għaddejja...",
|
||||
waitAlert: "Verifika għaddejja... stenna ftit."
|
||||
};
|
||||
globalThis.altchaI18n.set("mt", D);
|
||||
const f = {
|
||||
ariaLinkLabel: "Besøk Altcha.org",
|
||||
enterCode: "Skriv inn kode",
|
||||
enterCodeAria: "Skriv inn koden du hører. Trykk på Space for å spille av lyden.",
|
||||
error: "Verifisering mislyktes. Prøv igjen senere.",
|
||||
expired: "Verifiseringen utløp. Prøv igjen.",
|
||||
footer: 'Beskyttet av <a href="https://altcha.org/" target="_blank" aria-label="Besøk Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Få en lydutfordring",
|
||||
label: "Jeg er ikke en robot",
|
||||
loading: "Laster...",
|
||||
reload: "Last på nytt",
|
||||
verify: "Verifiser",
|
||||
verificationRequired: "Verifisering kreves!",
|
||||
verified: "Verifisert",
|
||||
verifying: "Verifiserer...",
|
||||
waitAlert: "Verifiserer... vennligst vent."
|
||||
};
|
||||
globalThis.altchaI18n.set("nb", f);
|
||||
globalThis.altchaI18n.set("no", f);
|
||||
const K = {
|
||||
ariaLinkLabel: "Bezoek Altcha.org",
|
||||
enterCode: "Voer code in",
|
||||
enterCodeAria: "Voer de code in die je hoort. Druk op Spatie om de audio af te spelen.",
|
||||
error: "Verificatie mislukt. Probeer het later opnieuw.",
|
||||
expired: "Verificatie verlopen. Probeer het opnieuw.",
|
||||
verificationRequired: "Verificatie vereist!",
|
||||
footer: 'Beschermd door <a href="https://altcha.org/" target="_blank" aria-label="Bezoek Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Audio-uitdaging ontvangen",
|
||||
label: "Ik ben geen robot",
|
||||
loading: "Laden...",
|
||||
reload: "Herladen",
|
||||
verify: "Verifiëren",
|
||||
verified: "Geverifieerd",
|
||||
verifying: "Bezig met verifiëren...",
|
||||
waitAlert: "Bezig met verifiëren... even geduld a.u.b."
|
||||
};
|
||||
globalThis.altchaI18n.set("nl", K);
|
||||
const F = {
|
||||
ariaLinkLabel: "Odwiedź Altcha.org",
|
||||
enterCode: "Wprowadź kod",
|
||||
enterCodeAria: "Wpisz kod, który słyszysz. Naciśnij Spację, aby odtworzyć dźwięk.",
|
||||
error: "Weryfikacja nie powiodła się. Spróbuj ponownie później.",
|
||||
expired: "Weryfikacja wygasła. Spróbuj ponownie.",
|
||||
verificationRequired: "Wymagana weryfikacja!",
|
||||
footer: 'Chronione przez <a href="https://altcha.org/" target="_blank" aria-label="Odwiedź Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Pobierz zadanie dźwiękowe",
|
||||
label: "Nie jestem robotem",
|
||||
loading: "Ładowanie...",
|
||||
reload: "Odśwież",
|
||||
verify: "Zweryfikuj",
|
||||
verified: "Zweryfikowano",
|
||||
verifying: "Weryfikacja...",
|
||||
waitAlert: "Trwa weryfikacja... proszę czekać."
|
||||
};
|
||||
globalThis.altchaI18n.set("pl", F);
|
||||
const Z = {
|
||||
ariaLinkLabel: "Visitar Altcha.org",
|
||||
enterCode: "Introduza o código",
|
||||
enterCodeAria: "Introduza o código que ouve. Prima Espaço para reproduzir o áudio.",
|
||||
error: "A verificação falhou. Por favor, tente novamente mais tarde.",
|
||||
expired: "Verificação expirada. Por favor, tente novamente.",
|
||||
verificationRequired: "Verificação necessária!",
|
||||
footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obter desafio de áudio",
|
||||
label: "Não sou um robô",
|
||||
loading: "A carregar...",
|
||||
reload: "Recarregar",
|
||||
verify: "Verificar",
|
||||
verified: "Verificado",
|
||||
verifying: "A verificar...",
|
||||
waitAlert: "A verificar... por favor aguarde."
|
||||
};
|
||||
globalThis.altchaI18n.set("pt-pt", Z);
|
||||
const M = {
|
||||
ariaLinkLabel: "Visitar Altcha.org",
|
||||
enterCode: "Digite o código",
|
||||
enterCodeAria: "Digite o código que você ouve. Pressione Espaço para reproduzir o áudio.",
|
||||
error: "Falha na verificação. Por favor, tente novamente mais tarde.",
|
||||
expired: "Verificação expirada. Por favor, tente novamente.",
|
||||
verificationRequired: "Verificação necessária!",
|
||||
footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obter desafio de áudio",
|
||||
label: "Eu não sou um robô",
|
||||
loading: "Carregando...",
|
||||
reload: "Recarregar",
|
||||
verify: "Verificar",
|
||||
verified: "Verificado",
|
||||
verifying: "Verificando...",
|
||||
waitAlert: "Verificando... por favor aguarde."
|
||||
};
|
||||
globalThis.altchaI18n.set("pt-br", M);
|
||||
const U = {
|
||||
ariaLinkLabel: "Vizitează Altcha.org",
|
||||
enterCode: "Introduceți codul",
|
||||
enterCodeAria: "Introduceți codul pe care îl auziți. Apăsați Spațiu pentru a reda audio.",
|
||||
error: "Verificarea a eșuat. Încearcă din nou mai târziu.",
|
||||
expired: "Verificarea a expirat. Încearcă din nou.",
|
||||
verificationRequired: "Verificare necesară!",
|
||||
footer: 'Protejat de <a href="https://altcha.org/" target="_blank" aria-label="Vizitează Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obține o provocare audio",
|
||||
label: "Nu sunt un robot",
|
||||
loading: "Se încarcă...",
|
||||
reload: "Reîncarcă",
|
||||
verify: "Verifică",
|
||||
verified: "Verificat",
|
||||
verifying: "Se verifică...",
|
||||
waitAlert: "Se verifică... te rugăm să aștepți."
|
||||
};
|
||||
globalThis.altchaI18n.set("ro", U);
|
||||
const G = {
|
||||
ariaLinkLabel: "Перейти на Altcha.org",
|
||||
enterCode: "Введите код",
|
||||
enterCodeAria: "Введите код, который слышите. Нажмите пробел для воспроизведения аудио.",
|
||||
error: "Ошибка верификации. Попробуйте позже.",
|
||||
expired: "Срок действия верификации истек. Попробуйте снова.",
|
||||
verificationRequired: "Требуется проверка!",
|
||||
footer: 'Защищено <a href="https://altcha.org/" target="_blank" aria-label="Перейти на Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Получить аудио задачу",
|
||||
label: "Я не робот",
|
||||
loading: "Загрузка...",
|
||||
reload: "Перезагрузить",
|
||||
verify: "Проверить",
|
||||
verified: "Проверено",
|
||||
verifying: "Идет проверка...",
|
||||
waitAlert: "Идет проверка... Пожалуйста, подождите."
|
||||
};
|
||||
globalThis.altchaI18n.set("ru", G);
|
||||
const W = {
|
||||
ariaLinkLabel: "Navštívte Altcha.org",
|
||||
enterCode: "Zadajte kód",
|
||||
enterCodeAria: "Zadajte kód, ktorý počujete. Stlačením medzerníka prehráte zvuk.",
|
||||
error: "Verifikácia zlyhala. Skúste to znova neskôr.",
|
||||
expired: "Verifikácia vypršala. Skúste to znova.",
|
||||
verificationRequired: "Vyžaduje sa overenie!",
|
||||
footer: 'Chránené <a href="https://altcha.org/" target="_blank" aria-label="Navštívte Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Získať audio výzvu",
|
||||
label: "Nie som robot",
|
||||
loading: "Načítava sa...",
|
||||
reload: "Obnoviť",
|
||||
verify: "Verifikovať",
|
||||
verified: "Verifikované",
|
||||
verifying: "Prebieha verifikácia...",
|
||||
waitAlert: "Prebieha verifikácia... prosím čakajte."
|
||||
};
|
||||
globalThis.altchaI18n.set("sk", W);
|
||||
const J = {
|
||||
ariaLinkLabel: "Obiščite Altcha.org",
|
||||
enterCode: "Vnesite kodo",
|
||||
enterCodeAria: "Vnesite kodo, ki jo slišite. Pritisnite preslednico za predvajanje zvoka.",
|
||||
error: "Preverjanje ni uspelo. Poskusite znova kasneje.",
|
||||
expired: "Preverjanje je poteklo. Poskusite znova.",
|
||||
verificationRequired: "Potrebna je preveritev!",
|
||||
footer: 'Zaščiteno z <a href="https://altcha.org/" target="_blank" aria-label="Obiščite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Pridobite zvočni izziv",
|
||||
label: "Nisem robot",
|
||||
loading: "Nalagam...",
|
||||
reload: "Ponovno naloži",
|
||||
verify: "Preveri",
|
||||
verified: "Preverjeno",
|
||||
verifying: "Preverjanje...",
|
||||
waitAlert: "Preverjanje... prosim počakajte."
|
||||
};
|
||||
globalThis.altchaI18n.set("sl", J);
|
||||
const Y = {
|
||||
ariaLinkLabel: "Posetite Altcha.org",
|
||||
enterCode: "Unesite kod",
|
||||
enterCodeAria: "Unesite kod koji čujete. Pritisnite Space da biste pustili zvuk.",
|
||||
error: "Verifikacija nije uspela. Pokušajte ponovo kasnije.",
|
||||
expired: "Verifikacija je istekla. Pokušajte ponovo.",
|
||||
footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posetite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Dohvatite audio izazov",
|
||||
label: "Nisam robot",
|
||||
loading: "Učitavanje...",
|
||||
reload: "Ponovo učitaj",
|
||||
verify: "Verifikuj",
|
||||
verificationRequired: "Verifikacija je obavezna!",
|
||||
verified: "Verifikovano",
|
||||
verifying: "Verifikacija u toku...",
|
||||
waitAlert: "Verifikacija u toku... molimo vas da sačekate."
|
||||
};
|
||||
globalThis.altchaI18n.set("sr", Y);
|
||||
const X = {
|
||||
ariaLinkLabel: "Besök Altcha.org",
|
||||
enterCode: "Ange kod",
|
||||
enterCodeAria: "Ange koden du hör. Tryck på mellanslag för att spela upp ljudet.",
|
||||
error: "Verifiering misslyckades. Försök igen senare.",
|
||||
expired: "Verifieringen har gått ut. Försök igen.",
|
||||
verificationRequired: "Verifiering krävs!",
|
||||
footer: 'Skyddad av <a href="https://altcha.org/" target="_blank" aria-label="Besök Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Få ljudutmaning",
|
||||
label: "Jag är inte en robot",
|
||||
loading: "Laddar...",
|
||||
reload: "Ladda om",
|
||||
verify: "Verifiera",
|
||||
verified: "Verifierad",
|
||||
verifying: "Verifierar...",
|
||||
waitAlert: "Verifierar... vänligen vänta."
|
||||
};
|
||||
globalThis.altchaI18n.set("sv", X);
|
||||
const Q = {
|
||||
ariaLinkLabel: "Altcha.org'yu ziyaret edin",
|
||||
enterCode: "Kodu girin",
|
||||
enterCodeAria: "Duyduğunuz kodu girin. Ses dosyasını oynatmak için Boşluk tuşuna basın.",
|
||||
error: "Doğrulama başarısız oldu. Lütfen daha sonra tekrar deneyin.",
|
||||
expired: "Doğrulama süresi doldu. Lütfen tekrar deneyin.",
|
||||
verificationRequired: "Doğrulama gerekli!",
|
||||
footer: `ALTCHA tarafından korunuyor <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org'yu ziyaret edin">ALTCHA</a>`,
|
||||
getAudioChallenge: "Sesli doğrulama al",
|
||||
label: "Ben robot değilim",
|
||||
loading: "Yükleniyor...",
|
||||
reload: "Yeniden yükle",
|
||||
verify: "Doğrula",
|
||||
verified: "Doğrulandı",
|
||||
verifying: "Doğrulama yapılıyor...",
|
||||
waitAlert: "Doğrulama yapılıyor... lütfen bekleyin."
|
||||
};
|
||||
globalThis.altchaI18n.set("tr", Q);
|
||||
const ee = {
|
||||
ariaLinkLabel: "Відвідати Altcha.org",
|
||||
enterCode: "Введіть код",
|
||||
enterCodeAria: "Введіть код, який ви чуєте. Натисніть пробіл, щоб відтворити аудіо.",
|
||||
error: "Перевірка не вдалася. Спробуйте пізніше.",
|
||||
expired: "Перевірка прострочена. Спробуйте знову.",
|
||||
verificationRequired: "Потрібна перевірка!",
|
||||
footer: 'Захищено <a href="https://altcha.org/" target="_blank" aria-label="Відвідати Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Отримати аудіо-челлендж",
|
||||
label: "Я не робот",
|
||||
loading: "Завантаження...",
|
||||
reload: "Перезавантажити",
|
||||
verify: "Перевірити",
|
||||
verified: "Перевірено",
|
||||
verifying: "Перевіряється...",
|
||||
waitAlert: "Перевірка... будь ласка, зачекайте."
|
||||
};
|
||||
globalThis.altchaI18n.set("uk", ee);
|
||||
const ae = {
|
||||
ariaLinkLabel: "Altcha.org পরিদর্শন করুন",
|
||||
enterCode: "কোড লিখুন",
|
||||
enterCodeAria: "আপনি যে কোড শুনতে পান তা লিখুন। অডিও প্লে করতে স্পেস বাটন টিপুন।",
|
||||
error: "যাচাইকরণ ব্যর্থ হয়েছে। পরে আবার চেষ্টা করুন।",
|
||||
expired: "যাচাইকরণ সময়সীমা শেষ হয়েছে। আবার চেষ্টা করুন।",
|
||||
verificationRequired: "যাচাই প্রয়োজন!",
|
||||
footer: 'দ্বারা সুরক্ষিত <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org পরিদর্শন করুন">ALTCHA</a>',
|
||||
getAudioChallenge: "অডিও চ্যালেঞ্জ নিন",
|
||||
label: "আমি রোবট নই",
|
||||
loading: "লোড হচ্ছে...",
|
||||
reload: "পুনরায় লোড করুন",
|
||||
verify: "যাচাই করুন",
|
||||
verified: "যাচাই করা হয়েছে",
|
||||
verifying: "যাচাই করা হচ্ছে...",
|
||||
waitAlert: "যাচাই করা হচ্ছে... দয়া করে অপেক্ষা করুন।"
|
||||
};
|
||||
globalThis.altchaI18n.set("bn", ae);
|
||||
const ie = {
|
||||
ariaLinkLabel: "בקר באתר Altcha.org",
|
||||
enterCode: "הזן קוד",
|
||||
enterCodeAria: "הזן את הקוד שאתה שומע. לחץ על רווח להפעלת השמע.",
|
||||
error: "האימות נכשל. נסה שוב מאוחר יותר.",
|
||||
expired: "תוקף האימות פג. נסה שוב.",
|
||||
verificationRequired: "נדרש אימות!",
|
||||
footer: 'מוגן על ידי <a href="https://altcha.org/" target="_blank" aria-label="בקר באתר Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "קבל אתגר שמע",
|
||||
label: "אני לא רובוט",
|
||||
loading: "טוען...",
|
||||
reload: "טען מחדש",
|
||||
verify: "אמת",
|
||||
verified: "אומת",
|
||||
verifying: "מאמת...",
|
||||
waitAlert: "מבצע אימות... אנא המתן."
|
||||
};
|
||||
globalThis.altchaI18n.set("he", ie);
|
||||
const re = {
|
||||
ariaLinkLabel: "Altcha.org पर जाएं",
|
||||
enterCode: "कोड दर्ज करेंं",
|
||||
enterCodeAria: "आप जो कोड सुनते हैं उसे दर्ज करें। ऑडियो चलाने के लिए स्पेस दबाएं।",
|
||||
error: "सत्यापन विफल। कृपया बाद में फिर से प्रयास करें।",
|
||||
expired: "सत्यापन समाप्त हो गया है। कृपया पुनः प्रयास करें।",
|
||||
verificationRequired: "सत्यापन आवश्यक है!",
|
||||
footer: 'द्वारा संरक्षित <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org पर जाएं">ALTCHA</a>',
|
||||
getAudioChallenge: "ऑडियो चुनौती प्राप्त करें",
|
||||
label: "मैं रोबोट नहीं हूँ",
|
||||
loading: "लोड हो रहा है...",
|
||||
reload: "पुनः लोड करें",
|
||||
verify: "सत्यापित करें",
|
||||
verified: "सत्यापित",
|
||||
verifying: "सत्यापित कर रहे हैं...",
|
||||
waitAlert: "सत्यापित किया जा रहा है... कृपया प्रतीक्षा करें।"
|
||||
};
|
||||
globalThis.altchaI18n.set("hi", re);
|
||||
const te = {
|
||||
ariaLinkLabel: "Kunjungi Altcha.org",
|
||||
enterCode: "Masukkan kode",
|
||||
enterCodeAria: "Masukkan kode yang Anda dengar. Tekan Spasi untuk memutar audio.",
|
||||
error: "Verifikasi gagal. Coba lagi nanti.",
|
||||
expired: "Verifikasi telah kedaluwarsa. Coba lagi.",
|
||||
verificationRequired: "Verifikasi diperlukan!",
|
||||
footer: 'Dilindungi oleh <a href="https://altcha.org/" target="_blank" aria-label="Kunjungi Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Dapatkan tantangan audio",
|
||||
label: "Saya bukan robot",
|
||||
loading: "Memuat...",
|
||||
reload: "Muat ulang",
|
||||
verify: "Verifikasi",
|
||||
verified: "Terverifikasi",
|
||||
verifying: "Memverifikasi...",
|
||||
waitAlert: "Memverifikasi... harap tunggu."
|
||||
};
|
||||
globalThis.altchaI18n.set("id", te);
|
||||
const oe = {
|
||||
ariaLinkLabel: "Altcha.orgを訪問",
|
||||
enterCode: "コードを入力",
|
||||
enterCodeAria: "聞こえるコードを入力してください。スペースキーを押して音声を再生します。",
|
||||
error: "認証に失敗しました。後でもう一度試してください。",
|
||||
expired: "認証が期限切れです。再試行してください。",
|
||||
verificationRequired: "認証が必要です!",
|
||||
footer: '保護されています <a href="https://altcha.org/" target="_blank" aria-label="Altcha.orgを訪問">ALTCHA</a>',
|
||||
getAudioChallenge: "音声チャレンジを取得",
|
||||
label: "ロボットじゃない",
|
||||
loading: "読み込み中...",
|
||||
reload: "再読み込み",
|
||||
verify: "確認",
|
||||
verified: "確認済み",
|
||||
verifying: "確認中...",
|
||||
waitAlert: "確認中...少々お待ちください。"
|
||||
};
|
||||
globalThis.altchaI18n.set("ja", oe);
|
||||
const le = {
|
||||
ariaLinkLabel: "Altcha.org 방문하기",
|
||||
enterCode: "코드 입력",
|
||||
enterCodeAria: "들리는 코드를 입력하세요. 스페이스 바를 눌러 오디오를 재생합니다.",
|
||||
error: "인증 실패. 나중에 다시 시도해주세요.",
|
||||
expired: "인증이 만료되었습니다. 다시 시도해주세요.",
|
||||
verificationRequired: "인증이 필요합니다!",
|
||||
footer: 'ALTCHA에서 보호됨 <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org 방문하기">ALTCHA</a>',
|
||||
getAudioChallenge: "오디오 챌린지 받기",
|
||||
label: "저는 로봇이 아닙니다",
|
||||
loading: "로딩 중...",
|
||||
reload: "새로 고침",
|
||||
verify: "확인",
|
||||
verified: "확인됨",
|
||||
verifying: "확인 중...",
|
||||
waitAlert: "확인 중... 잠시만 기다려주세요."
|
||||
};
|
||||
globalThis.altchaI18n.set("ko", le);
|
||||
const ne = {
|
||||
ariaLinkLabel: "Altcha.org भेट द्या",
|
||||
enterCode: "कोड टाकाा",
|
||||
enterCodeAria: "तुम्ही ऐकत असलेला कोड टाका. ऑडिओ प्ले करण्यासाठी स्पेस दाबा.",
|
||||
error: "पुष्टीकरण अयशस्वी झाले. कृपया नंतर पुन्हा प्रयत्न करा.",
|
||||
expired: "पुष्टीकरण कालबाह्य झाले आहे. कृपया पुन्हा प्रयत्न करा.",
|
||||
verificationRequired: "पडताळणी आवश्यक आहे!",
|
||||
footer: 'द्वारे संरक्षित <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org भेट द्या">ALTCHA</a>',
|
||||
getAudioChallenge: "ऑडिओ चॅलेंज मिळवा",
|
||||
label: "मी रोबोट नाही",
|
||||
loading: "लोड होत आहे...",
|
||||
reload: "पुन्हा लोड करा",
|
||||
verify: "पुष्टीकरण करा",
|
||||
verified: "पुष्टीकरण झाले",
|
||||
verifying: "पुष्टीकरण करत आहे...",
|
||||
waitAlert: "पुष्टीकरण करत आहे... कृपया थोडा वेळ थांबा."
|
||||
};
|
||||
globalThis.altchaI18n.set("mr", ne);
|
||||
const de = {
|
||||
ariaLinkLabel: "Altcha.org ஐ பார்வையிடவும்",
|
||||
enterCode: "குறியீட்டை உள்ளிடவும்",
|
||||
enterCodeAria: "நீங்கள் கேட்கும் குறியீட்டை உள்ளிடவும். ஆடியோவை இயக்க Space ஐ அழுத்தவும்.",
|
||||
error: "சரிபார்ப்பு தோல்வி. பிறகு மீண்டும் முயற்சிக்கவும்.",
|
||||
expired: "சரிபார்ப்பு காலாவதியானது. மீண்டும் முயற்சிக்கவும்.",
|
||||
verificationRequired: "சரிபார்ப்பு தேவை!",
|
||||
footer: 'மூலமாக பாதுகாக்கப்பட்டவை <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org ஐ பார்வையிடவும்">ALTCHA</a>',
|
||||
getAudioChallenge: "ஒலி சவாலை பெறவும்",
|
||||
label: "நான் ரோபோடான அல்ல",
|
||||
loading: "செயலாக்கம்...",
|
||||
reload: "மீண்டும் புதுப்பிக்கவும்",
|
||||
verify: "சரிபார்க்கவும்",
|
||||
verified: "சரிபார்க்கப்பட்டது",
|
||||
verifying: "சரிபார்க்கப்படுகிறது...",
|
||||
waitAlert: "சரிபார்க்கப்படுகிறது... தயவுசெய்து காத்திருக்கவும்."
|
||||
};
|
||||
globalThis.altchaI18n.set("ta", de);
|
||||
const se = {
|
||||
ariaLinkLabel: "Altcha.org సందర్శించండి",
|
||||
enterCode: "కోడ్ని నమోదు చేయండి",
|
||||
enterCodeAria: "మీరు విన్న కోడ్ని నమోదు చేయండి. ఆడియో ప్లే చేయడానికి స్పేస్ను నొక్కండి.",
|
||||
error: "చెకింగ్ విఫలమైంది. దయచేసి మరల ప్రయత్నించండి.",
|
||||
expired: "చెకింగ్ కాలం ముగిసింది. దయచేసి మరల ప్రయత్నించండి.",
|
||||
verificationRequired: "ధృవీకరణ అవసరం!",
|
||||
footer: 'ఈ సైట్ రక్షించబడింది <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org సందర్శించండి">ALTCHA</a>',
|
||||
getAudioChallenge: "ఆడియో ఛాలెంజ్ పొందండి",
|
||||
label: "నేను రోబోట్ కాదు",
|
||||
loading: "లోడ్ అవుతోంది...",
|
||||
reload: "మళ్ళీ లోడ్ చేయండి",
|
||||
verify: "ధ్రువీకరించు",
|
||||
verified: "ధ్రువీకరించబడింది",
|
||||
verifying: "ధ్రువీకరణ జరుగుతుంది...",
|
||||
waitAlert: "ధ్రువీకరణ జరుగుతుంది... దయచేసి వేచి ఉండండి."
|
||||
};
|
||||
globalThis.altchaI18n.set("te", se);
|
||||
const ge = {
|
||||
ariaLinkLabel: "เยี่ยมชม Altcha.org",
|
||||
enterCode: "ป้อนรหัส",
|
||||
enterCodeAria: "ป้อนรหัสที่คุณได้ยิน กด Space เพื่อเล่นเสียง",
|
||||
error: "การตรวจสอบล้มเหลว กรุณาลองอีกครั้งภายหลัง",
|
||||
expired: "การตรวจสอบหมดอายุ กรุณาลองใหม่",
|
||||
verificationRequired: "จำเป็นต้องตรวจสอบ!",
|
||||
footer: 'ป้องกันโดย <a href="https://altcha.org/" target="_blank" aria-label="เยี่ยมชม Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "รับการท้าทายเสียง",
|
||||
label: "ฉันไม่ใช่บอท",
|
||||
loading: "กำลังโหลด...",
|
||||
reload: "โหลดใหม่",
|
||||
verify: "ตรวจสอบ",
|
||||
verified: "ตรวจสอบแล้ว",
|
||||
verifying: "กำลังตรวจสอบ...",
|
||||
waitAlert: "กำลังตรวจสอบ... กรุณารอ"
|
||||
};
|
||||
globalThis.altchaI18n.set("th", ge);
|
||||
const ce = {
|
||||
ariaLinkLabel: "Altcha.org پر جائیں",
|
||||
enterCode: "کوڈ درج کریں",
|
||||
enterCodeAria: "جو کوڈ آپ سنتے ہیں وہ درج کریں۔ آڈیو چلانے کے لیے اسپیس دبائیں۔",
|
||||
error: "توثیق ناکام ہو گئی۔ براہ کرم بعد میں دوبارہ کوشش کریں۔",
|
||||
expired: "توثیق کی مدت ختم ہو گئی ہے۔ براہ کرم دوبارہ کوشش کریں۔",
|
||||
verificationRequired: "تصدیق ضروری ہے!",
|
||||
footer: 'کے ذریعے محفوظ <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org پر جائیں">ALTCHA</a>',
|
||||
getAudioChallenge: "آڈیو چیلنج حاصل کریں",
|
||||
label: "میں روبوٹ نہیں ہوں",
|
||||
loading: "لوڈ ہو رہا ہے...",
|
||||
reload: "دوبارہ لوڈ کریں",
|
||||
verify: "توثیق کریں",
|
||||
verified: "توثیق شدہ",
|
||||
verifying: "توثیق ہو رہی ہے...",
|
||||
waitAlert: "توثیق ہو رہی ہے... براہ کرم انتظار کریں۔"
|
||||
};
|
||||
globalThis.altchaI18n.set("ur", ce);
|
||||
const he = {
|
||||
ariaLinkLabel: "Truy cập Altcha.org",
|
||||
enterCode: "Nhập mã",
|
||||
enterCodeAria: "Nhập mã bạn nghe được. Nhấn Phím cách để phát âm thanh.",
|
||||
error: "Xác minh thất bại. Vui lòng thử lại sau.",
|
||||
expired: "Xác minh đã hết hạn. Vui lòng thử lại.",
|
||||
verificationRequired: "Yêu cầu xác minh!",
|
||||
footer: 'Được bảo vệ bởi <a href="https://altcha.org/" target="_blank" aria-label="Truy cập Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Nhận thử thách âm thanh",
|
||||
label: "Tôi không phải là robot",
|
||||
loading: "Đang tải...",
|
||||
reload: "Tải lại",
|
||||
verify: "Xác minh",
|
||||
verified: "Đã xác minh",
|
||||
verifying: "Đang xác minh...",
|
||||
waitAlert: "Đang xác minh... vui lòng chờ."
|
||||
};
|
||||
globalThis.altchaI18n.set("vi", he);
|
||||
const fe = {
|
||||
ariaLinkLabel: "访问 Altcha.org",
|
||||
enterCode: "输入代码",
|
||||
enterCodeAria: "输入您听到的代码。按空格键播放音频。",
|
||||
error: "验证失败。稍后再试。",
|
||||
expired: "验证已过期。请重试。",
|
||||
verificationRequired: "需要验证!",
|
||||
footer: '由 <a href="https://altcha.org/" target="_blank" aria-label="访问 Altcha.org">ALTCHA</a> 保护',
|
||||
getAudioChallenge: "获取音频挑战",
|
||||
label: "我不是机器人",
|
||||
loading: "加载中...",
|
||||
reload: "重新加载",
|
||||
verify: "验证",
|
||||
verified: "已验证",
|
||||
verifying: "正在验证...",
|
||||
waitAlert: "正在验证... 请稍等。"
|
||||
};
|
||||
globalThis.altchaI18n.set("zh-cn", fe);
|
||||
const ue = {
|
||||
ariaLinkLabel: "訪問 Altcha.org",
|
||||
enterCode: "輸入代碼",
|
||||
enterCodeAria: "輸入您聽到的代碼。按空格鍵播放音頻。",
|
||||
error: "驗證失敗。稍後再試。",
|
||||
expired: "驗證已過期。請重試。",
|
||||
verificationRequired: "需要驗證!",
|
||||
footer: '由 <a href="https://altcha.org/" target="_blank" aria-label="訪問 Altcha.org">ALTCHA</a> 保護',
|
||||
getAudioChallenge: "獲取音頻挑戰",
|
||||
label: "我不是機器人",
|
||||
loading: "載入中...",
|
||||
reload: "重新載入",
|
||||
verify: "驗證",
|
||||
verified: "已驗證",
|
||||
verifying: "正在驗證...",
|
||||
waitAlert: "正在驗證... 請稍等。"
|
||||
};
|
||||
globalThis.altchaI18n.set("zh-tw", ue);
|
||||
1
dist_i18n/all.umd.cjs
Normal file
1
dist_i18n/all.umd.cjs
Normal file
File diff suppressed because one or more lines are too long
1
dist_i18n/americas.d.ts
vendored
Normal file
1
dist_i18n/americas.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/americas';
|
||||
127
dist_i18n/americas.js
Normal file
127
dist_i18n/americas.js
Normal file
@@ -0,0 +1,127 @@
|
||||
const l = () => {
|
||||
};
|
||||
function b(e, r) {
|
||||
return e != e ? r == r : e !== r || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let u = !1;
|
||||
function h(e) {
|
||||
var r = u;
|
||||
try {
|
||||
return u = !0, e();
|
||||
} finally {
|
||||
u = r;
|
||||
}
|
||||
}
|
||||
function p(e, r, a) {
|
||||
if (e == null)
|
||||
return r(void 0), l;
|
||||
const o = h(
|
||||
() => e.subscribe(
|
||||
r,
|
||||
// @ts-expect-error
|
||||
a
|
||||
)
|
||||
);
|
||||
return o.unsubscribe ? () => o.unsubscribe() : o;
|
||||
}
|
||||
const n = [];
|
||||
function v(e, r = l) {
|
||||
let a = null;
|
||||
const o = /* @__PURE__ */ new Set();
|
||||
function s(t) {
|
||||
if (b(e, t) && (e = t, a)) {
|
||||
const c = !n.length;
|
||||
for (const i of o)
|
||||
i[1](), n.push(i, e);
|
||||
if (c) {
|
||||
for (let i = 0; i < n.length; i += 2)
|
||||
n[i][0](n[i + 1]);
|
||||
n.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function d(t) {
|
||||
s(t(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function g(t, c = l) {
|
||||
const i = [t, c];
|
||||
return o.add(i), o.size === 1 && (a = r(s, d) || l), t(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
o.delete(i), o.size === 0 && a && (a(), a = null);
|
||||
};
|
||||
}
|
||||
return { set: s, update: d, subscribe: g };
|
||||
}
|
||||
function f(e) {
|
||||
let r;
|
||||
return p(e, (a) => r = a)(), r;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => f(globalThis.altchaI18n.store)[e],
|
||||
set: (e, r) => {
|
||||
Object.assign(f(globalThis.altchaI18n.store), {
|
||||
[e]: r
|
||||
}), globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: v({})
|
||||
};
|
||||
const V = {
|
||||
ariaLinkLabel: "Visitez Altcha.org",
|
||||
enterCode: "Entrez le code",
|
||||
enterCodeAria: "Entrez le code que vous entendez. Appuyez sur la barre d'espace pour écouter l'audio.",
|
||||
error: "Échec de la vérification. Réessayez plus tard.",
|
||||
expired: "La vérification a expiré. Réessayez.",
|
||||
verificationRequired: "Vérification requise !",
|
||||
footer: 'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtenir un défi audio",
|
||||
label: "Pas un robot",
|
||||
loading: "Chargement...",
|
||||
reload: "Recharger",
|
||||
verify: "Vérifier",
|
||||
verified: "Vérifié",
|
||||
verifying: "Vérification en cours...",
|
||||
waitAlert: "Vérification en cours... veuillez patienter."
|
||||
};
|
||||
globalThis.altchaI18n.set("fr-ca", V);
|
||||
const A = {
|
||||
ariaLinkLabel: "Visitar Altcha.org",
|
||||
enterCode: "Ingresa el código",
|
||||
enterCodeAria: "Ingresa el código que escuchas. Presiona Espacio para reproducir el audio.",
|
||||
error: "Falló la verificación. Por favor vuelve a intentarlo más tarde.",
|
||||
expired: "La verificación expiró. Por favor inténtalo de nuevo.",
|
||||
verificationRequired: "¡Verificación requerida!",
|
||||
footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtener un reto de audio",
|
||||
label: "No soy un robot",
|
||||
loading: "Cargando...",
|
||||
reload: "Volver a cargar",
|
||||
verify: "Verificar",
|
||||
verified: "Verificado",
|
||||
verifying: "Verificando...",
|
||||
waitAlert: "Verificando... por favor espera."
|
||||
};
|
||||
globalThis.altchaI18n.set("es-419", A);
|
||||
const C = {
|
||||
ariaLinkLabel: "Visitar Altcha.org",
|
||||
enterCode: "Digite o código",
|
||||
enterCodeAria: "Digite o código que você ouve. Pressione Espaço para reproduzir o áudio.",
|
||||
error: "Falha na verificação. Por favor, tente novamente mais tarde.",
|
||||
expired: "Verificação expirada. Por favor, tente novamente.",
|
||||
verificationRequired: "Verificação necessária!",
|
||||
footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obter desafio de áudio",
|
||||
label: "Eu não sou um robô",
|
||||
loading: "Carregando...",
|
||||
reload: "Recarregar",
|
||||
verify: "Verificar",
|
||||
verified: "Verificado",
|
||||
verifying: "Verificando...",
|
||||
waitAlert: "Verificando... por favor aguarde."
|
||||
};
|
||||
globalThis.altchaI18n.set("pt-br", C);
|
||||
1
dist_i18n/americas.umd.cjs
Normal file
1
dist_i18n/americas.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(t){typeof define=="function"&&define.amd?define(t):t()})(function(){"use strict";const t=()=>{};function g(e,r){return e!=e?r==r:e!==r||e!==null&&typeof e=="object"||typeof e=="function"}let s=!1;function b(e){var r=s;try{return s=!0,e()}finally{s=r}}function h(e,r,a){if(e==null)return r(void 0),t;const o=b(()=>e.subscribe(r,a));return o.unsubscribe?()=>o.unsubscribe():o}const l=[];function p(e,r=t){let a=null;const o=new Set;function u(n){if(g(e,n)&&(e=n,a)){const f=!l.length;for(const i of o)i[1](),l.push(i,e);if(f){for(let i=0;i<l.length;i+=2)l[i][0](l[i+1]);l.length=0}}}function d(n){u(n(e))}function C(n,f=t){const i=[n,f];return o.add(i),o.size===1&&(a=r(u,d)||t),n(e),()=>{o.delete(i),o.size===0&&a&&(a(),a=null)}}return{set:u,update:d,subscribe:C}}function c(e){let r;return h(e,a=>r=a)(),r}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,r)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:r}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:p({})};const v={ariaLinkLabel:"Visitez Altcha.org",enterCode:"Entrez le code",enterCodeAria:"Entrez le code que vous entendez. Appuyez sur la barre d'espace pour écouter l'audio.",error:"Échec de la vérification. Réessayez plus tard.",expired:"La vérification a expiré. Réessayez.",verificationRequired:"Vérification requise !",footer:'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',getAudioChallenge:"Obtenir un défi audio",label:"Pas un robot",loading:"Chargement...",reload:"Recharger",verify:"Vérifier",verified:"Vérifié",verifying:"Vérification en cours...",waitAlert:"Vérification en cours... veuillez patienter."};globalThis.altchaI18n.set("fr-ca",v);const V={ariaLinkLabel:"Visitar Altcha.org",enterCode:"Ingresa el código",enterCodeAria:"Ingresa el código que escuchas. Presiona Espacio para reproducir el audio.",error:"Falló la verificación. Por favor vuelve a intentarlo más tarde.",expired:"La verificación expiró. Por favor inténtalo de nuevo.",verificationRequired:"¡Verificación requerida!",footer:'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',getAudioChallenge:"Obtener un reto de audio",label:"No soy un robot",loading:"Cargando...",reload:"Volver a cargar",verify:"Verificar",verified:"Verificado",verifying:"Verificando...",waitAlert:"Verificando... por favor espera."};globalThis.altchaI18n.set("es-419",V);const A={ariaLinkLabel:"Visitar Altcha.org",enterCode:"Digite o código",enterCodeAria:"Digite o código que você ouve. Pressione Espaço para reproduzir o áudio.",error:"Falha na verificação. Por favor, tente novamente mais tarde.",expired:"Verificação expirada. Por favor, tente novamente.",verificationRequired:"Verificação necessária!",footer:'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',getAudioChallenge:"Obter desafio de áudio",label:"Eu não sou um robô",loading:"Carregando...",reload:"Recarregar",verify:"Verificar",verified:"Verificado",verifying:"Verificando...",waitAlert:"Verificando... por favor aguarde."};globalThis.altchaI18n.set("pt-br",A)});
|
||||
1
dist_i18n/ar.d.ts
vendored
Normal file
1
dist_i18n/ar.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/ar';
|
||||
94
dist_i18n/ar.js
Normal file
94
dist_i18n/ar.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const o = () => {
|
||||
};
|
||||
function g(t, e) {
|
||||
return t != t ? e == e : t !== e || t !== null && typeof t == "object" || typeof t == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(t) {
|
||||
var e = c;
|
||||
try {
|
||||
return c = !0, t();
|
||||
} finally {
|
||||
c = e;
|
||||
}
|
||||
}
|
||||
function p(t, e, r) {
|
||||
if (t == null)
|
||||
return e(void 0), o;
|
||||
const i = d(
|
||||
() => t.subscribe(
|
||||
e,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return i.unsubscribe ? () => i.unsubscribe() : i;
|
||||
}
|
||||
const s = [];
|
||||
function T(t, e = o) {
|
||||
let r = null;
|
||||
const i = /* @__PURE__ */ new Set();
|
||||
function a(l) {
|
||||
if (g(t, l) && (t = l, r)) {
|
||||
const u = !s.length;
|
||||
for (const n of i)
|
||||
n[1](), s.push(n, t);
|
||||
if (u) {
|
||||
for (let n = 0; n < s.length; n += 2)
|
||||
s[n][0](s[n + 1]);
|
||||
s.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function f(l) {
|
||||
a(l(
|
||||
/** @type {T} */
|
||||
t
|
||||
));
|
||||
}
|
||||
function h(l, u = o) {
|
||||
const n = [l, u];
|
||||
return i.add(n), i.size === 1 && (r = e(a, f) || o), l(
|
||||
/** @type {T} */
|
||||
t
|
||||
), () => {
|
||||
i.delete(n), i.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: a, update: f, subscribe: h };
|
||||
}
|
||||
function b(t) {
|
||||
let e;
|
||||
return p(t, (r) => e = r)(), e;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (t) => b(globalThis.altchaI18n.store)[t],
|
||||
set: (t, e) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[t]: e
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: T({})
|
||||
};
|
||||
const A = {
|
||||
ariaLinkLabel: "زور Altcha.org",
|
||||
enterCode: "أدخل الرمز",
|
||||
enterCodeAria: "أدخل الرمز الذي تسمعه. اضغط على المسافة لتشغيل الصوت.",
|
||||
error: "فشل التحقق. حاول مرة أخرى لاحقاً.",
|
||||
expired: "انتهت صلاحية التحقق. حاول مرة أخرى.",
|
||||
verificationRequired: "مطلوب التحقق!",
|
||||
footer: 'محمي بواسطة <a href="https://altcha.org/" target="_blank" aria-label="زور Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "احصل على تحدي صوتي",
|
||||
label: "أنا لست روبوتاً",
|
||||
loading: "جارٍ التحميل...",
|
||||
reload: "إعادة تحميل",
|
||||
verify: "تحقق",
|
||||
verified: "تم التحقق",
|
||||
verifying: "جارٍ التحقق...",
|
||||
waitAlert: "جارٍ التحقق... يرجى الانتظار."
|
||||
};
|
||||
globalThis.altchaI18n.set("ar", A);
|
||||
export {
|
||||
A as i18n
|
||||
};
|
||||
1
dist_i18n/ar.umd.cjs
Normal file
1
dist_i18n/ar.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(l,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(l=typeof globalThis<"u"?globalThis:l||self,o(l["[name]"]={}))})(this,function(l){"use strict";const o=()=>{};function d(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let a=!1;function p(e){var t=a;try{return a=!0,e()}finally{a=t}}function T(e,t,i){if(e==null)return t(void 0),o;const r=p(()=>e.subscribe(t,i));return r.unsubscribe?()=>r.unsubscribe():r}const u=[];function y(e,t=o){let i=null;const r=new Set;function f(s){if(d(e,s)&&(e=s,i)){const b=!u.length;for(const n of r)n[1](),u.push(n,e);if(b){for(let n=0;n<u.length;n+=2)u[n][0](u[n+1]);u.length=0}}}function g(s){f(s(e))}function A(s,b=o){const n=[s,b];return r.add(n),r.size===1&&(i=t(f,g)||o),s(e),()=>{r.delete(n),r.size===0&&i&&(i(),i=null)}}return{set:f,update:g,subscribe:A}}function c(e){let t;return T(e,i=>t=i)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const h={ariaLinkLabel:"زور Altcha.org",enterCode:"أدخل الرمز",enterCodeAria:"أدخل الرمز الذي تسمعه. اضغط على المسافة لتشغيل الصوت.",error:"فشل التحقق. حاول مرة أخرى لاحقاً.",expired:"انتهت صلاحية التحقق. حاول مرة أخرى.",verificationRequired:"مطلوب التحقق!",footer:'محمي بواسطة <a href="https://altcha.org/" target="_blank" aria-label="زور Altcha.org">ALTCHA</a>',getAudioChallenge:"احصل على تحدي صوتي",label:"أنا لست روبوتاً",loading:"جارٍ التحميل...",reload:"إعادة تحميل",verify:"تحقق",verified:"تم التحقق",verifying:"جارٍ التحقق...",waitAlert:"جارٍ التحقق... يرجى الانتظار."};globalThis.altchaI18n.set("ar",h),l.i18n=h,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/asia.d.ts
vendored
Normal file
1
dist_i18n/asia.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/asia';
|
||||
361
dist_i18n/asia.js
Normal file
361
dist_i18n/asia.js
Normal file
@@ -0,0 +1,361 @@
|
||||
const o = () => {
|
||||
};
|
||||
function u(e, a) {
|
||||
return e != e ? a == a : e !== a || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let d = !1;
|
||||
function b(e) {
|
||||
var a = d;
|
||||
try {
|
||||
return d = !0, e();
|
||||
} finally {
|
||||
d = a;
|
||||
}
|
||||
}
|
||||
function A(e, a, i) {
|
||||
if (e == null)
|
||||
return a(void 0), o;
|
||||
const t = b(
|
||||
() => e.subscribe(
|
||||
a,
|
||||
// @ts-expect-error
|
||||
i
|
||||
)
|
||||
);
|
||||
return t.unsubscribe ? () => t.unsubscribe() : t;
|
||||
}
|
||||
const n = [];
|
||||
function v(e, a = o) {
|
||||
let i = null;
|
||||
const t = /* @__PURE__ */ new Set();
|
||||
function h(l) {
|
||||
if (u(e, l) && (e = l, i)) {
|
||||
const g = !n.length;
|
||||
for (const r of t)
|
||||
r[1](), n.push(r, e);
|
||||
if (g) {
|
||||
for (let r = 0; r < n.length; r += 2)
|
||||
n[r][0](n[r + 1]);
|
||||
n.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function s(l) {
|
||||
h(l(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function f(l, g = o) {
|
||||
const r = [l, g];
|
||||
return t.add(r), t.size === 1 && (i = a(h, s) || o), l(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
t.delete(r), t.size === 0 && i && (i(), i = null);
|
||||
};
|
||||
}
|
||||
return { set: h, update: s, subscribe: f };
|
||||
}
|
||||
function c(e) {
|
||||
let a;
|
||||
return A(e, (i) => a = i)(), a;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => c(globalThis.altchaI18n.store)[e],
|
||||
set: (e, a) => {
|
||||
Object.assign(c(globalThis.altchaI18n.store), {
|
||||
[e]: a
|
||||
}), globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: v({})
|
||||
};
|
||||
const C = {
|
||||
ariaLinkLabel: "访问 Altcha.org",
|
||||
enterCode: "输入代码",
|
||||
enterCodeAria: "输入您听到的代码。按空格键播放音频。",
|
||||
error: "验证失败。稍后再试。",
|
||||
expired: "验证已过期。请重试。",
|
||||
verificationRequired: "需要验证!",
|
||||
footer: '由 <a href="https://altcha.org/" target="_blank" aria-label="访问 Altcha.org">ALTCHA</a> 保护',
|
||||
getAudioChallenge: "获取音频挑战",
|
||||
label: "我不是机器人",
|
||||
loading: "加载中...",
|
||||
reload: "重新加载",
|
||||
verify: "验证",
|
||||
verified: "已验证",
|
||||
verifying: "正在验证...",
|
||||
waitAlert: "正在验证... 请稍等。"
|
||||
};
|
||||
globalThis.altchaI18n.set("zh-cn", C);
|
||||
const k = {
|
||||
ariaLinkLabel: "訪問 Altcha.org",
|
||||
enterCode: "輸入代碼",
|
||||
enterCodeAria: "輸入您聽到的代碼。按空格鍵播放音頻。",
|
||||
error: "驗證失敗。稍後再試。",
|
||||
expired: "驗證已過期。請重試。",
|
||||
verificationRequired: "需要驗證!",
|
||||
footer: '由 <a href="https://altcha.org/" target="_blank" aria-label="訪問 Altcha.org">ALTCHA</a> 保護',
|
||||
getAudioChallenge: "獲取音頻挑戰",
|
||||
label: "我不是機器人",
|
||||
loading: "載入中...",
|
||||
reload: "重新載入",
|
||||
verify: "驗證",
|
||||
verified: "已驗證",
|
||||
verifying: "正在驗證...",
|
||||
waitAlert: "正在驗證... 請稍等。"
|
||||
};
|
||||
globalThis.altchaI18n.set("zh-tw", k);
|
||||
const y = {
|
||||
ariaLinkLabel: "Altcha.orgを訪問",
|
||||
enterCode: "コードを入力",
|
||||
enterCodeAria: "聞こえるコードを入力してください。スペースキーを押して音声を再生します。",
|
||||
error: "認証に失敗しました。後でもう一度試してください。",
|
||||
expired: "認証が期限切れです。再試行してください。",
|
||||
verificationRequired: "認証が必要です!",
|
||||
footer: '保護されています <a href="https://altcha.org/" target="_blank" aria-label="Altcha.orgを訪問">ALTCHA</a>',
|
||||
getAudioChallenge: "音声チャレンジを取得",
|
||||
label: "ロボットじゃない",
|
||||
loading: "読み込み中...",
|
||||
reload: "再読み込み",
|
||||
verify: "確認",
|
||||
verified: "確認済み",
|
||||
verifying: "確認中...",
|
||||
waitAlert: "確認中...少々お待ちください。"
|
||||
};
|
||||
globalThis.altchaI18n.set("ja", y);
|
||||
const p = {
|
||||
ariaLinkLabel: "Altcha.org 방문하기",
|
||||
enterCode: "코드 입력",
|
||||
enterCodeAria: "들리는 코드를 입력하세요. 스페이스 바를 눌러 오디오를 재생합니다.",
|
||||
error: "인증 실패. 나중에 다시 시도해주세요.",
|
||||
expired: "인증이 만료되었습니다. 다시 시도해주세요.",
|
||||
verificationRequired: "인증이 필요합니다!",
|
||||
footer: 'ALTCHA에서 보호됨 <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org 방문하기">ALTCHA</a>',
|
||||
getAudioChallenge: "오디오 챌린지 받기",
|
||||
label: "저는 로봇이 아닙니다",
|
||||
loading: "로딩 중...",
|
||||
reload: "새로 고침",
|
||||
verify: "확인",
|
||||
verified: "확인됨",
|
||||
verifying: "확인 중...",
|
||||
waitAlert: "확인 중... 잠시만 기다려주세요."
|
||||
};
|
||||
globalThis.altchaI18n.set("ko", p);
|
||||
const L = {
|
||||
ariaLinkLabel: "Altcha.org पर जाएं",
|
||||
enterCode: "कोड दर्ज करेंं",
|
||||
enterCodeAria: "आप जो कोड सुनते हैं उसे दर्ज करें। ऑडियो चलाने के लिए स्पेस दबाएं।",
|
||||
error: "सत्यापन विफल। कृपया बाद में फिर से प्रयास करें।",
|
||||
expired: "सत्यापन समाप्त हो गया है। कृपया पुनः प्रयास करें।",
|
||||
verificationRequired: "सत्यापन आवश्यक है!",
|
||||
footer: 'द्वारा संरक्षित <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org पर जाएं">ALTCHA</a>',
|
||||
getAudioChallenge: "ऑडियो चुनौती प्राप्त करें",
|
||||
label: "मैं रोबोट नहीं हूँ",
|
||||
loading: "लोड हो रहा है...",
|
||||
reload: "पुनः लोड करें",
|
||||
verify: "सत्यापित करें",
|
||||
verified: "सत्यापित",
|
||||
verifying: "सत्यापित कर रहे हैं...",
|
||||
waitAlert: "सत्यापित किया जा रहा है... कृपया प्रतीक्षा करें।"
|
||||
};
|
||||
globalThis.altchaI18n.set("hi", L);
|
||||
const T = {
|
||||
ariaLinkLabel: "Altcha.org পরিদর্শন করুন",
|
||||
enterCode: "কোড লিখুন",
|
||||
enterCodeAria: "আপনি যে কোড শুনতে পান তা লিখুন। অডিও প্লে করতে স্পেস বাটন টিপুন।",
|
||||
error: "যাচাইকরণ ব্যর্থ হয়েছে। পরে আবার চেষ্টা করুন।",
|
||||
expired: "যাচাইকরণ সময়সীমা শেষ হয়েছে। আবার চেষ্টা করুন।",
|
||||
verificationRequired: "যাচাই প্রয়োজন!",
|
||||
footer: 'দ্বারা সুরক্ষিত <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org পরিদর্শন করুন">ALTCHA</a>',
|
||||
getAudioChallenge: "অডিও চ্যালেঞ্জ নিন",
|
||||
label: "আমি রোবট নই",
|
||||
loading: "লোড হচ্ছে...",
|
||||
reload: "পুনরায় লোড করুন",
|
||||
verify: "যাচাই করুন",
|
||||
verified: "যাচাই করা হয়েছে",
|
||||
verifying: "যাচাই করা হচ্ছে...",
|
||||
waitAlert: "যাচাই করা হচ্ছে... দয়া করে অপেক্ষা করুন।"
|
||||
};
|
||||
globalThis.altchaI18n.set("bn", T);
|
||||
const m = {
|
||||
ariaLinkLabel: "Altcha.org भेट द्या",
|
||||
enterCode: "कोड टाकाा",
|
||||
enterCodeAria: "तुम्ही ऐकत असलेला कोड टाका. ऑडिओ प्ले करण्यासाठी स्पेस दाबा.",
|
||||
error: "पुष्टीकरण अयशस्वी झाले. कृपया नंतर पुन्हा प्रयत्न करा.",
|
||||
expired: "पुष्टीकरण कालबाह्य झाले आहे. कृपया पुन्हा प्रयत्न करा.",
|
||||
verificationRequired: "पडताळणी आवश्यक आहे!",
|
||||
footer: 'द्वारे संरक्षित <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org भेट द्या">ALTCHA</a>',
|
||||
getAudioChallenge: "ऑडिओ चॅलेंज मिळवा",
|
||||
label: "मी रोबोट नाही",
|
||||
loading: "लोड होत आहे...",
|
||||
reload: "पुन्हा लोड करा",
|
||||
verify: "पुष्टीकरण करा",
|
||||
verified: "पुष्टीकरण झाले",
|
||||
verifying: "पुष्टीकरण करत आहे...",
|
||||
waitAlert: "पुष्टीकरण करत आहे... कृपया थोडा वेळ थांबा."
|
||||
};
|
||||
globalThis.altchaI18n.set("mr", m);
|
||||
const I = {
|
||||
ariaLinkLabel: "Altcha.org సందర్శించండి",
|
||||
enterCode: "కోడ్ని నమోదు చేయండి",
|
||||
enterCodeAria: "మీరు విన్న కోడ్ని నమోదు చేయండి. ఆడియో ప్లే చేయడానికి స్పేస్ను నొక్కండి.",
|
||||
error: "చెకింగ్ విఫలమైంది. దయచేసి మరల ప్రయత్నించండి.",
|
||||
expired: "చెకింగ్ కాలం ముగిసింది. దయచేసి మరల ప్రయత్నించండి.",
|
||||
verificationRequired: "ధృవీకరణ అవసరం!",
|
||||
footer: 'ఈ సైట్ రక్షించబడింది <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org సందర్శించండి">ALTCHA</a>',
|
||||
getAudioChallenge: "ఆడియో ఛాలెంజ్ పొందండి",
|
||||
label: "నేను రోబోట్ కాదు",
|
||||
loading: "లోడ్ అవుతోంది...",
|
||||
reload: "మళ్ళీ లోడ్ చేయండి",
|
||||
verify: "ధ్రువీకరించు",
|
||||
verified: "ధ్రువీకరించబడింది",
|
||||
verifying: "ధ్రువీకరణ జరుగుతుంది...",
|
||||
waitAlert: "ధ్రువీకరణ జరుగుతుంది... దయచేసి వేచి ఉండండి."
|
||||
};
|
||||
globalThis.altchaI18n.set("te", I);
|
||||
const _ = {
|
||||
ariaLinkLabel: "Altcha.org ஐ பார்வையிடவும்",
|
||||
enterCode: "குறியீட்டை உள்ளிடவும்",
|
||||
enterCodeAria: "நீங்கள் கேட்கும் குறியீட்டை உள்ளிடவும். ஆடியோவை இயக்க Space ஐ அழுத்தவும்.",
|
||||
error: "சரிபார்ப்பு தோல்வி. பிறகு மீண்டும் முயற்சிக்கவும்.",
|
||||
expired: "சரிபார்ப்பு காலாவதியானது. மீண்டும் முயற்சிக்கவும்.",
|
||||
verificationRequired: "சரிபார்ப்பு தேவை!",
|
||||
footer: 'மூலமாக பாதுகாக்கப்பட்டவை <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org ஐ பார்வையிடவும்">ALTCHA</a>',
|
||||
getAudioChallenge: "ஒலி சவாலை பெறவும்",
|
||||
label: "நான் ரோபோடான அல்ல",
|
||||
loading: "செயலாக்கம்...",
|
||||
reload: "மீண்டும் புதுப்பிக்கவும்",
|
||||
verify: "சரிபார்க்கவும்",
|
||||
verified: "சரிபார்க்கப்பட்டது",
|
||||
verifying: "சரிபார்க்கப்படுகிறது...",
|
||||
waitAlert: "சரிபார்க்கப்படுகிறது... தயவுசெய்து காத்திருக்கவும்."
|
||||
};
|
||||
globalThis.altchaI18n.set("ta", _);
|
||||
const x = {
|
||||
ariaLinkLabel: "Altcha.org پر جائیں",
|
||||
enterCode: "کوڈ درج کریں",
|
||||
enterCodeAria: "جو کوڈ آپ سنتے ہیں وہ درج کریں۔ آڈیو چلانے کے لیے اسپیس دبائیں۔",
|
||||
error: "توثیق ناکام ہو گئی۔ براہ کرم بعد میں دوبارہ کوشش کریں۔",
|
||||
expired: "توثیق کی مدت ختم ہو گئی ہے۔ براہ کرم دوبارہ کوشش کریں۔",
|
||||
verificationRequired: "تصدیق ضروری ہے!",
|
||||
footer: 'کے ذریعے محفوظ <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org پر جائیں">ALTCHA</a>',
|
||||
getAudioChallenge: "آڈیو چیلنج حاصل کریں",
|
||||
label: "میں روبوٹ نہیں ہوں",
|
||||
loading: "لوڈ ہو رہا ہے...",
|
||||
reload: "دوبارہ لوڈ کریں",
|
||||
verify: "توثیق کریں",
|
||||
verified: "توثیق شدہ",
|
||||
verifying: "توثیق ہو رہی ہے...",
|
||||
waitAlert: "توثیق ہو رہی ہے... براہ کرم انتظار کریں۔"
|
||||
};
|
||||
globalThis.altchaI18n.set("ur", x);
|
||||
const q = {
|
||||
ariaLinkLabel: "Kunjungi Altcha.org",
|
||||
enterCode: "Masukkan kode",
|
||||
enterCodeAria: "Masukkan kode yang Anda dengar. Tekan Spasi untuk memutar audio.",
|
||||
error: "Verifikasi gagal. Coba lagi nanti.",
|
||||
expired: "Verifikasi telah kedaluwarsa. Coba lagi.",
|
||||
verificationRequired: "Verifikasi diperlukan!",
|
||||
footer: 'Dilindungi oleh <a href="https://altcha.org/" target="_blank" aria-label="Kunjungi Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Dapatkan tantangan audio",
|
||||
label: "Saya bukan robot",
|
||||
loading: "Memuat...",
|
||||
reload: "Muat ulang",
|
||||
verify: "Verifikasi",
|
||||
verified: "Terverifikasi",
|
||||
verifying: "Memverifikasi...",
|
||||
waitAlert: "Memverifikasi... harap tunggu."
|
||||
};
|
||||
globalThis.altchaI18n.set("id", q);
|
||||
const w = {
|
||||
ariaLinkLabel: "เยี่ยมชม Altcha.org",
|
||||
enterCode: "ป้อนรหัส",
|
||||
enterCodeAria: "ป้อนรหัสที่คุณได้ยิน กด Space เพื่อเล่นเสียง",
|
||||
error: "การตรวจสอบล้มเหลว กรุณาลองอีกครั้งภายหลัง",
|
||||
expired: "การตรวจสอบหมดอายุ กรุณาลองใหม่",
|
||||
verificationRequired: "จำเป็นต้องตรวจสอบ!",
|
||||
footer: 'ป้องกันโดย <a href="https://altcha.org/" target="_blank" aria-label="เยี่ยมชม Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "รับการท้าทายเสียง",
|
||||
label: "ฉันไม่ใช่บอท",
|
||||
loading: "กำลังโหลด...",
|
||||
reload: "โหลดใหม่",
|
||||
verify: "ตรวจสอบ",
|
||||
verified: "ตรวจสอบแล้ว",
|
||||
verifying: "กำลังตรวจสอบ...",
|
||||
waitAlert: "กำลังตรวจสอบ... กรุณารอ"
|
||||
};
|
||||
globalThis.altchaI18n.set("th", w);
|
||||
const H = {
|
||||
ariaLinkLabel: "Truy cập Altcha.org",
|
||||
enterCode: "Nhập mã",
|
||||
enterCodeAria: "Nhập mã bạn nghe được. Nhấn Phím cách để phát âm thanh.",
|
||||
error: "Xác minh thất bại. Vui lòng thử lại sau.",
|
||||
expired: "Xác minh đã hết hạn. Vui lòng thử lại.",
|
||||
verificationRequired: "Yêu cầu xác minh!",
|
||||
footer: 'Được bảo vệ bởi <a href="https://altcha.org/" target="_blank" aria-label="Truy cập Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Nhận thử thách âm thanh",
|
||||
label: "Tôi không phải là robot",
|
||||
loading: "Đang tải...",
|
||||
reload: "Tải lại",
|
||||
verify: "Xác minh",
|
||||
verified: "Đã xác minh",
|
||||
verifying: "Đang xác minh...",
|
||||
waitAlert: "Đang xác minh... vui lòng chờ."
|
||||
};
|
||||
globalThis.altchaI18n.set("vi", H);
|
||||
const R = {
|
||||
ariaLinkLabel: "زور Altcha.org",
|
||||
enterCode: "أدخل الرمز",
|
||||
enterCodeAria: "أدخل الرمز الذي تسمعه. اضغط على المسافة لتشغيل الصوت.",
|
||||
error: "فشل التحقق. حاول مرة أخرى لاحقاً.",
|
||||
expired: "انتهت صلاحية التحقق. حاول مرة أخرى.",
|
||||
verificationRequired: "مطلوب التحقق!",
|
||||
footer: 'محمي بواسطة <a href="https://altcha.org/" target="_blank" aria-label="زور Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "احصل على تحدي صوتي",
|
||||
label: "أنا لست روبوتاً",
|
||||
loading: "جارٍ التحميل...",
|
||||
reload: "إعادة تحميل",
|
||||
verify: "تحقق",
|
||||
verified: "تم التحقق",
|
||||
verifying: "جارٍ التحقق...",
|
||||
waitAlert: "جارٍ التحقق... يرجى الانتظار."
|
||||
};
|
||||
globalThis.altchaI18n.set("ar", R);
|
||||
const $ = {
|
||||
ariaLinkLabel: "בקר באתר Altcha.org",
|
||||
enterCode: "הזן קוד",
|
||||
enterCodeAria: "הזן את הקוד שאתה שומע. לחץ על רווח להפעלת השמע.",
|
||||
error: "האימות נכשל. נסה שוב מאוחר יותר.",
|
||||
expired: "תוקף האימות פג. נסה שוב.",
|
||||
verificationRequired: "נדרש אימות!",
|
||||
footer: 'מוגן על ידי <a href="https://altcha.org/" target="_blank" aria-label="בקר באתר Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "קבל אתגר שמע",
|
||||
label: "אני לא רובוט",
|
||||
loading: "טוען...",
|
||||
reload: "טען מחדש",
|
||||
verify: "אמת",
|
||||
verified: "אומת",
|
||||
verifying: "מאמת...",
|
||||
waitAlert: "מבצע אימות... אנא המתן."
|
||||
};
|
||||
globalThis.altchaI18n.set("he", $);
|
||||
const D = {
|
||||
ariaLinkLabel: "Altcha.org'yu ziyaret edin",
|
||||
enterCode: "Kodu girin",
|
||||
enterCodeAria: "Duyduğunuz kodu girin. Ses dosyasını oynatmak için Boşluk tuşuna basın.",
|
||||
error: "Doğrulama başarısız oldu. Lütfen daha sonra tekrar deneyin.",
|
||||
expired: "Doğrulama süresi doldu. Lütfen tekrar deneyin.",
|
||||
verificationRequired: "Doğrulama gerekli!",
|
||||
footer: `ALTCHA tarafından korunuyor <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org'yu ziyaret edin">ALTCHA</a>`,
|
||||
getAudioChallenge: "Sesli doğrulama al",
|
||||
label: "Ben robot değilim",
|
||||
loading: "Yükleniyor...",
|
||||
reload: "Yeniden yükle",
|
||||
verify: "Doğrula",
|
||||
verified: "Doğrulandı",
|
||||
verifying: "Doğrulama yapılıyor...",
|
||||
waitAlert: "Doğrulama yapılıyor... lütfen bekleyin."
|
||||
};
|
||||
globalThis.altchaI18n.set("tr", D);
|
||||
1
dist_i18n/asia.umd.cjs
Normal file
1
dist_i18n/asia.umd.cjs
Normal file
File diff suppressed because one or more lines are too long
1
dist_i18n/bg.d.ts
vendored
Normal file
1
dist_i18n/bg.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/bg';
|
||||
94
dist_i18n/bg.js
Normal file
94
dist_i18n/bg.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const o = () => {
|
||||
};
|
||||
function h(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(e) {
|
||||
var t = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = t;
|
||||
}
|
||||
}
|
||||
function p(e, t, r) {
|
||||
if (e == null)
|
||||
return t(void 0), o;
|
||||
const i = d(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return i.unsubscribe ? () => i.unsubscribe() : i;
|
||||
}
|
||||
const s = [];
|
||||
function T(e, t = o) {
|
||||
let r = null;
|
||||
const i = /* @__PURE__ */ new Set();
|
||||
function a(l) {
|
||||
if (h(e, l) && (e = l, r)) {
|
||||
const u = !s.length;
|
||||
for (const n of i)
|
||||
n[1](), s.push(n, e);
|
||||
if (u) {
|
||||
for (let n = 0; n < s.length; n += 2)
|
||||
s[n][0](s[n + 1]);
|
||||
s.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function f(l) {
|
||||
a(l(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function g(l, u = o) {
|
||||
const n = [l, u];
|
||||
return i.add(n), i.size === 1 && (r = t(a, f) || o), l(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
i.delete(n), i.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: a, update: f, subscribe: g };
|
||||
}
|
||||
function b(e) {
|
||||
let t;
|
||||
return p(e, (r) => t = r)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => b(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: T({})
|
||||
};
|
||||
const A = {
|
||||
ariaLinkLabel: "Посетете Altcha.org",
|
||||
enterCode: "Въведете код",
|
||||
enterCodeAria: "Въведете кода, който чувате. Натиснете Space за възпроизвеждане на аудио.",
|
||||
error: "Проверката неуспешна. Моля, опитайте по-късно.",
|
||||
expired: "Времето за проверка изтече. Моля, опитайте отново.",
|
||||
verificationRequired: "Изисква се проверка!",
|
||||
footer: 'Защитено от <a href="https://altcha.org/" target="_blank" aria-label="Посетете Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Аудио проверка",
|
||||
label: "Аз не съм робот",
|
||||
loading: "Зареждане...",
|
||||
reload: "Презареди",
|
||||
verify: "Провери",
|
||||
verified: "Проверено",
|
||||
verifying: "Проверява се...",
|
||||
waitAlert: "Проверката е в процес... моля изчакайте."
|
||||
};
|
||||
globalThis.altchaI18n.set("bg", A);
|
||||
export {
|
||||
A as i18n
|
||||
};
|
||||
1
dist_i18n/bg.umd.cjs
Normal file
1
dist_i18n/bg.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(l,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(l=typeof globalThis<"u"?globalThis:l||self,o(l["[name]"]={}))})(this,function(l){"use strict";const o=()=>{};function d(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let a=!1;function p(e){var t=a;try{return a=!0,e()}finally{a=t}}function T(e,t,i){if(e==null)return t(void 0),o;const r=p(()=>e.subscribe(t,i));return r.unsubscribe?()=>r.unsubscribe():r}const u=[];function y(e,t=o){let i=null;const r=new Set;function f(s){if(d(e,s)&&(e=s,i)){const b=!u.length;for(const n of r)n[1](),u.push(n,e);if(b){for(let n=0;n<u.length;n+=2)u[n][0](u[n+1]);u.length=0}}}function g(s){f(s(e))}function A(s,b=o){const n=[s,b];return r.add(n),r.size===1&&(i=t(f,g)||o),s(e),()=>{r.delete(n),r.size===0&&i&&(i(),i=null)}}return{set:f,update:g,subscribe:A}}function c(e){let t;return T(e,i=>t=i)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const h={ariaLinkLabel:"Посетете Altcha.org",enterCode:"Въведете код",enterCodeAria:"Въведете кода, който чувате. Натиснете Space за възпроизвеждане на аудио.",error:"Проверката неуспешна. Моля, опитайте по-късно.",expired:"Времето за проверка изтече. Моля, опитайте отново.",verificationRequired:"Изисква се проверка!",footer:'Защитено от <a href="https://altcha.org/" target="_blank" aria-label="Посетете Altcha.org">ALTCHA</a>',getAudioChallenge:"Аудио проверка",label:"Аз не съм робот",loading:"Зареждане...",reload:"Презареди",verify:"Провери",verified:"Проверено",verifying:"Проверява се...",waitAlert:"Проверката е в процес... моля изчакайте."};globalThis.altchaI18n.set("bg",h),l.i18n=h,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/bn.d.ts
vendored
Normal file
1
dist_i18n/bn.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/bn';
|
||||
94
dist_i18n/bn.js
Normal file
94
dist_i18n/bn.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const o = () => {
|
||||
};
|
||||
function g(t, e) {
|
||||
return t != t ? e == e : t !== e || t !== null && typeof t == "object" || typeof t == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(t) {
|
||||
var e = c;
|
||||
try {
|
||||
return c = !0, t();
|
||||
} finally {
|
||||
c = e;
|
||||
}
|
||||
}
|
||||
function p(t, e, r) {
|
||||
if (t == null)
|
||||
return e(void 0), o;
|
||||
const i = d(
|
||||
() => t.subscribe(
|
||||
e,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return i.unsubscribe ? () => i.unsubscribe() : i;
|
||||
}
|
||||
const s = [];
|
||||
function T(t, e = o) {
|
||||
let r = null;
|
||||
const i = /* @__PURE__ */ new Set();
|
||||
function a(l) {
|
||||
if (g(t, l) && (t = l, r)) {
|
||||
const u = !s.length;
|
||||
for (const n of i)
|
||||
n[1](), s.push(n, t);
|
||||
if (u) {
|
||||
for (let n = 0; n < s.length; n += 2)
|
||||
s[n][0](s[n + 1]);
|
||||
s.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function f(l) {
|
||||
a(l(
|
||||
/** @type {T} */
|
||||
t
|
||||
));
|
||||
}
|
||||
function h(l, u = o) {
|
||||
const n = [l, u];
|
||||
return i.add(n), i.size === 1 && (r = e(a, f) || o), l(
|
||||
/** @type {T} */
|
||||
t
|
||||
), () => {
|
||||
i.delete(n), i.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: a, update: f, subscribe: h };
|
||||
}
|
||||
function b(t) {
|
||||
let e;
|
||||
return p(t, (r) => e = r)(), e;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (t) => b(globalThis.altchaI18n.store)[t],
|
||||
set: (t, e) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[t]: e
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: T({})
|
||||
};
|
||||
const A = {
|
||||
ariaLinkLabel: "Altcha.org পরিদর্শন করুন",
|
||||
enterCode: "কোড লিখুন",
|
||||
enterCodeAria: "আপনি যে কোড শুনতে পান তা লিখুন। অডিও প্লে করতে স্পেস বাটন টিপুন।",
|
||||
error: "যাচাইকরণ ব্যর্থ হয়েছে। পরে আবার চেষ্টা করুন।",
|
||||
expired: "যাচাইকরণ সময়সীমা শেষ হয়েছে। আবার চেষ্টা করুন।",
|
||||
verificationRequired: "যাচাই প্রয়োজন!",
|
||||
footer: 'দ্বারা সুরক্ষিত <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org পরিদর্শন করুন">ALTCHA</a>',
|
||||
getAudioChallenge: "অডিও চ্যালেঞ্জ নিন",
|
||||
label: "আমি রোবট নই",
|
||||
loading: "লোড হচ্ছে...",
|
||||
reload: "পুনরায় লোড করুন",
|
||||
verify: "যাচাই করুন",
|
||||
verified: "যাচাই করা হয়েছে",
|
||||
verifying: "যাচাই করা হচ্ছে...",
|
||||
waitAlert: "যাচাই করা হচ্ছে... দয়া করে অপেক্ষা করুন।"
|
||||
};
|
||||
globalThis.altchaI18n.set("bn", A);
|
||||
export {
|
||||
A as i18n
|
||||
};
|
||||
1
dist_i18n/bn.umd.cjs
Normal file
1
dist_i18n/bn.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(l,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(l=typeof globalThis<"u"?globalThis:l||self,o(l["[name]"]={}))})(this,function(l){"use strict";const o=()=>{};function d(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let a=!1;function p(e){var t=a;try{return a=!0,e()}finally{a=t}}function T(e,t,i){if(e==null)return t(void 0),o;const r=p(()=>e.subscribe(t,i));return r.unsubscribe?()=>r.unsubscribe():r}const u=[];function y(e,t=o){let i=null;const r=new Set;function f(s){if(d(e,s)&&(e=s,i)){const b=!u.length;for(const n of r)n[1](),u.push(n,e);if(b){for(let n=0;n<u.length;n+=2)u[n][0](u[n+1]);u.length=0}}}function g(s){f(s(e))}function A(s,b=o){const n=[s,b];return r.add(n),r.size===1&&(i=t(f,g)||o),s(e),()=>{r.delete(n),r.size===0&&i&&(i(),i=null)}}return{set:f,update:g,subscribe:A}}function c(e){let t;return T(e,i=>t=i)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const h={ariaLinkLabel:"Altcha.org পরিদর্শন করুন",enterCode:"কোড লিখুন",enterCodeAria:"আপনি যে কোড শুনতে পান তা লিখুন। অডিও প্লে করতে স্পেস বাটন টিপুন।",error:"যাচাইকরণ ব্যর্থ হয়েছে। পরে আবার চেষ্টা করুন।",expired:"যাচাইকরণ সময়সীমা শেষ হয়েছে। আবার চেষ্টা করুন।",verificationRequired:"যাচাই প্রয়োজন!",footer:'দ্বারা সুরক্ষিত <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org পরিদর্শন করুন">ALTCHA</a>',getAudioChallenge:"অডিও চ্যালেঞ্জ নিন",label:"আমি রোবট নই",loading:"লোড হচ্ছে...",reload:"পুনরায় লোড করুন",verify:"যাচাই করুন",verified:"যাচাই করা হয়েছে",verifying:"যাচাই করা হচ্ছে...",waitAlert:"যাচাই করা হচ্ছে... দয়া করে অপেক্ষা করুন।"};globalThis.altchaI18n.set("bn",h),l.i18n=h,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/bs.d.ts
vendored
Normal file
1
dist_i18n/bs.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/bs';
|
||||
94
dist_i18n/bs.js
Normal file
94
dist_i18n/bs.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const s = () => {
|
||||
};
|
||||
function g(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function k(e) {
|
||||
var t = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = t;
|
||||
}
|
||||
}
|
||||
function j(e, t, n) {
|
||||
if (e == null)
|
||||
return t(void 0), s;
|
||||
const o = k(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
n
|
||||
)
|
||||
);
|
||||
return o.unsubscribe ? () => o.unsubscribe() : o;
|
||||
}
|
||||
const r = [];
|
||||
function d(e, t = s) {
|
||||
let n = null;
|
||||
const o = /* @__PURE__ */ new Set();
|
||||
function l(a) {
|
||||
if (g(e, a) && (e = a, n)) {
|
||||
const u = !r.length;
|
||||
for (const i of o)
|
||||
i[1](), r.push(i, e);
|
||||
if (u) {
|
||||
for (let i = 0; i < r.length; i += 2)
|
||||
r[i][0](r[i + 1]);
|
||||
r.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function f(a) {
|
||||
l(a(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function h(a, u = s) {
|
||||
const i = [a, u];
|
||||
return o.add(i), o.size === 1 && (n = t(l, f) || s), a(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
o.delete(i), o.size === 0 && n && (n(), n = null);
|
||||
};
|
||||
}
|
||||
return { set: l, update: f, subscribe: h };
|
||||
}
|
||||
function b(e) {
|
||||
let t;
|
||||
return j(e, (n) => t = n)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => b(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: d({})
|
||||
};
|
||||
const p = {
|
||||
ariaLinkLabel: "Posjetite Altcha.org",
|
||||
enterCode: "Unesite kod",
|
||||
enterCodeAria: "Unesite kod koji čujete. Pritisnite Space da biste pustili zvuk.",
|
||||
error: "Verifikacija nije uspjela. Pokušajte ponovo kasnije.",
|
||||
expired: "Verifikacija je istekla. Pokušajte ponovo.",
|
||||
footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posjetite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Dohvatite audio izazov",
|
||||
label: "Nisam robot",
|
||||
loading: "Učitavanje...",
|
||||
reload: "Ponovno učitaj",
|
||||
verify: "Verifikuj",
|
||||
verificationRequired: "Verifikacija je obavezna!",
|
||||
verified: "Verifikovano",
|
||||
verifying: "Verifikacija u toku...",
|
||||
waitAlert: "Verifikacija u toku... molimo vas da sačekate."
|
||||
};
|
||||
globalThis.altchaI18n.set("bs", p);
|
||||
export {
|
||||
p as i18n
|
||||
};
|
||||
1
dist_i18n/bs.umd.cjs
Normal file
1
dist_i18n/bs.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(r,a){typeof exports=="object"&&typeof module<"u"?a(exports):typeof define=="function"&&define.amd?define(["exports"],a):(r=typeof globalThis<"u"?globalThis:r||self,a(r["[name]"]={}))})(this,function(r){"use strict";const a=()=>{};function g(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function j(e){var t=u;try{return u=!0,e()}finally{u=t}}function k(e,t,n){if(e==null)return t(void 0),a;const o=j(()=>e.subscribe(t,n));return o.unsubscribe?()=>o.unsubscribe():o}const l=[];function p(e,t=a){let n=null;const o=new Set;function f(s){if(g(e,s)&&(e=s,n)){const b=!l.length;for(const i of o)i[1](),l.push(i,e);if(b){for(let i=0;i<l.length;i+=2)l[i][0](l[i+1]);l.length=0}}}function d(s){f(s(e))}function v(s,b=a){const i=[s,b];return o.add(i),o.size===1&&(n=t(f,d)||a),s(e),()=>{o.delete(i),o.size===0&&n&&(n(),n=null)}}return{set:f,update:d,subscribe:v}}function c(e){let t;return k(e,n=>t=n)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:p({})};const h={ariaLinkLabel:"Posjetite Altcha.org",enterCode:"Unesite kod",enterCodeAria:"Unesite kod koji čujete. Pritisnite Space da biste pustili zvuk.",error:"Verifikacija nije uspjela. Pokušajte ponovo kasnije.",expired:"Verifikacija je istekla. Pokušajte ponovo.",footer:'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posjetite Altcha.org">ALTCHA</a>',getAudioChallenge:"Dohvatite audio izazov",label:"Nisam robot",loading:"Učitavanje...",reload:"Ponovno učitaj",verify:"Verifikuj",verificationRequired:"Verifikacija je obavezna!",verified:"Verifikovano",verifying:"Verifikacija u toku...",waitAlert:"Verifikacija u toku... molimo vas da sačekate."};globalThis.altchaI18n.set("bs",h),r.i18n=h,Object.defineProperty(r,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/ca.d.ts
vendored
Normal file
1
dist_i18n/ca.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/ca';
|
||||
94
dist_i18n/ca.js
Normal file
94
dist_i18n/ca.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const s = () => {
|
||||
};
|
||||
function h(e, r) {
|
||||
return e != e ? r == r : e !== r || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let u = !1;
|
||||
function d(e) {
|
||||
var r = u;
|
||||
try {
|
||||
return u = !0, e();
|
||||
} finally {
|
||||
u = r;
|
||||
}
|
||||
}
|
||||
function p(e, r, t) {
|
||||
if (e == null)
|
||||
return r(void 0), s;
|
||||
const n = d(
|
||||
() => e.subscribe(
|
||||
r,
|
||||
// @ts-expect-error
|
||||
t
|
||||
)
|
||||
);
|
||||
return n.unsubscribe ? () => n.unsubscribe() : n;
|
||||
}
|
||||
const o = [];
|
||||
function T(e, r = s) {
|
||||
let t = null;
|
||||
const n = /* @__PURE__ */ new Set();
|
||||
function l(a) {
|
||||
if (h(e, a) && (e = a, t)) {
|
||||
const c = !o.length;
|
||||
for (const i of n)
|
||||
i[1](), o.push(i, e);
|
||||
if (c) {
|
||||
for (let i = 0; i < o.length; i += 2)
|
||||
o[i][0](o[i + 1]);
|
||||
o.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function b(a) {
|
||||
l(a(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function g(a, c = s) {
|
||||
const i = [a, c];
|
||||
return n.add(i), n.size === 1 && (t = r(l, b) || s), a(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
n.delete(i), n.size === 0 && t && (t(), t = null);
|
||||
};
|
||||
}
|
||||
return { set: l, update: b, subscribe: g };
|
||||
}
|
||||
function f(e) {
|
||||
let r;
|
||||
return p(e, (t) => r = t)(), r;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => f(globalThis.altchaI18n.store)[e],
|
||||
set: (e, r) => {
|
||||
Object.assign(f(globalThis.altchaI18n.store), {
|
||||
[e]: r
|
||||
}), globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: T({})
|
||||
};
|
||||
const I = {
|
||||
ariaLinkLabel: "Visita Altcha.org",
|
||||
enterCode: "Introdueix el codi",
|
||||
enterCodeAria: "Introdueix el codi que escoltes. Prem Espai per reproduir l’àudio.",
|
||||
error: "Verificació fallida. Torna-ho a provar més tard.",
|
||||
expired: "Verificació expirada. Torna-ho a provar.",
|
||||
footer: 'Protegit per <a href="https://altcha.org/" target="_blank" aria-label="Visita Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtenir un desafiament d’àudio",
|
||||
label: "No sóc un robot",
|
||||
loading: "Carregant...",
|
||||
reload: "Torna a carregar",
|
||||
verify: "Verificar",
|
||||
verificationRequired: "Es requereix verificació!",
|
||||
verified: "Verificat",
|
||||
verifying: "Verificant...",
|
||||
waitAlert: "Verificant... si us plau, espera."
|
||||
};
|
||||
globalThis.altchaI18n.set("ca", I);
|
||||
export {
|
||||
I as i18n
|
||||
};
|
||||
1
dist_i18n/ca.umd.cjs
Normal file
1
dist_i18n/ca.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(s,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(s=typeof globalThis<"u"?globalThis:s||self,o(s["[name]"]={}))})(this,function(s){"use strict";const o=()=>{};function g(e,i){return e!=e?i==i:e!==i||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function p(e){var i=u;try{return u=!0,e()}finally{u=i}}function T(e,i,r){if(e==null)return i(void 0),o;const n=p(()=>e.subscribe(i,r));return n.unsubscribe?()=>n.unsubscribe():n}const l=[];function y(e,i=o){let r=null;const n=new Set;function f(a){if(g(e,a)&&(e=a,r)){const b=!l.length;for(const t of n)t[1](),l.push(t,e);if(b){for(let t=0;t<l.length;t+=2)l[t][0](l[t+1]);l.length=0}}}function h(a){f(a(e))}function I(a,b=o){const t=[a,b];return n.add(t),n.size===1&&(r=i(f,h)||o),a(e),()=>{n.delete(t),n.size===0&&r&&(r(),r=null)}}return{set:f,update:h,subscribe:I}}function c(e){let i;return T(e,r=>i=r)(),i}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,i)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:i}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const d={ariaLinkLabel:"Visita Altcha.org",enterCode:"Introdueix el codi",enterCodeAria:"Introdueix el codi que escoltes. Prem Espai per reproduir l’àudio.",error:"Verificació fallida. Torna-ho a provar més tard.",expired:"Verificació expirada. Torna-ho a provar.",footer:'Protegit per <a href="https://altcha.org/" target="_blank" aria-label="Visita Altcha.org">ALTCHA</a>',getAudioChallenge:"Obtenir un desafiament d’àudio",label:"No sóc un robot",loading:"Carregant...",reload:"Torna a carregar",verify:"Verificar",verificationRequired:"Es requereix verificació!",verified:"Verificat",verifying:"Verificant...",waitAlert:"Verificant... si us plau, espera."};globalThis.altchaI18n.set("ca",d),s.i18n=d,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/cs.d.ts
vendored
Normal file
1
dist_i18n/cs.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/cs';
|
||||
94
dist_i18n/cs.js
Normal file
94
dist_i18n/cs.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const l = () => {
|
||||
};
|
||||
function g(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(e) {
|
||||
var t = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = t;
|
||||
}
|
||||
}
|
||||
function v(e, t, o) {
|
||||
if (e == null)
|
||||
return t(void 0), l;
|
||||
const r = d(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
o
|
||||
)
|
||||
);
|
||||
return r.unsubscribe ? () => r.unsubscribe() : r;
|
||||
}
|
||||
const i = [];
|
||||
function p(e, t = l) {
|
||||
let o = null;
|
||||
const r = /* @__PURE__ */ new Set();
|
||||
function a(s) {
|
||||
if (g(e, s) && (e = s, o)) {
|
||||
const u = !i.length;
|
||||
for (const n of r)
|
||||
n[1](), i.push(n, e);
|
||||
if (u) {
|
||||
for (let n = 0; n < i.length; n += 2)
|
||||
i[n][0](i[n + 1]);
|
||||
i.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function h(s) {
|
||||
a(s(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function f(s, u = l) {
|
||||
const n = [s, u];
|
||||
return r.add(n), r.size === 1 && (o = t(a, h) || l), s(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
r.delete(n), r.size === 0 && o && (o(), o = null);
|
||||
};
|
||||
}
|
||||
return { set: a, update: h, subscribe: f };
|
||||
}
|
||||
function b(e) {
|
||||
let t;
|
||||
return v(e, (o) => t = o)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => b(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: p({})
|
||||
};
|
||||
const k = {
|
||||
ariaLinkLabel: "Navštivte Altcha.org",
|
||||
enterCode: "Zadejte kód",
|
||||
enterCodeAria: "Zadejte kód, který slyšíte. Stisknutím mezerníku přehrajete zvuk.",
|
||||
error: "Ověření selhalo. Zkuste to prosím později.",
|
||||
expired: "Ověření vypršelo. Zkuste to prosím znovu.",
|
||||
verificationRequired: "Vyžaduje se ověření!",
|
||||
footer: 'Chráněno pomocí <a href="https://altcha.org/" target="_blank" aria-label="Navštivte Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Získat audio výzvu",
|
||||
label: "Nejsem robot",
|
||||
loading: "Načítání...",
|
||||
reload: "Znovu načíst",
|
||||
verify: "Ověřit",
|
||||
verified: "Ověřeno",
|
||||
verifying: "Ověřování...",
|
||||
waitAlert: "Probíhá ověření... prosím počkejte."
|
||||
};
|
||||
globalThis.altchaI18n.set("cs", k);
|
||||
export {
|
||||
k as i18n
|
||||
};
|
||||
1
dist_i18n/cs.umd.cjs
Normal file
1
dist_i18n/cs.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(l,r){typeof exports=="object"&&typeof module<"u"?r(exports):typeof define=="function"&&define.amd?define(["exports"],r):(l=typeof globalThis<"u"?globalThis:l||self,r(l["[name]"]={}))})(this,function(l){"use strict";const r=()=>{};function g(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let a=!1;function p(e){var t=a;try{return a=!0,e()}finally{a=t}}function v(e,t,o){if(e==null)return t(void 0),r;const i=p(()=>e.subscribe(t,o));return i.unsubscribe?()=>i.unsubscribe():i}const u=[];function k(e,t=r){let o=null;const i=new Set;function f(s){if(g(e,s)&&(e=s,o)){const b=!u.length;for(const n of i)n[1](),u.push(n,e);if(b){for(let n=0;n<u.length;n+=2)u[n][0](u[n+1]);u.length=0}}}function d(s){f(s(e))}function y(s,b=r){const n=[s,b];return i.add(n),i.size===1&&(o=t(f,d)||r),s(e),()=>{i.delete(n),i.size===0&&o&&(o(),o=null)}}return{set:f,update:d,subscribe:y}}function c(e){let t;return v(e,o=>t=o)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:k({})};const h={ariaLinkLabel:"Navštivte Altcha.org",enterCode:"Zadejte kód",enterCodeAria:"Zadejte kód, který slyšíte. Stisknutím mezerníku přehrajete zvuk.",error:"Ověření selhalo. Zkuste to prosím později.",expired:"Ověření vypršelo. Zkuste to prosím znovu.",verificationRequired:"Vyžaduje se ověření!",footer:'Chráněno pomocí <a href="https://altcha.org/" target="_blank" aria-label="Navštivte Altcha.org">ALTCHA</a>',getAudioChallenge:"Získat audio výzvu",label:"Nejsem robot",loading:"Načítání...",reload:"Znovu načíst",verify:"Ověřit",verified:"Ověřeno",verifying:"Ověřování...",waitAlert:"Probíhá ověření... prosím počkejte."};globalThis.altchaI18n.set("cs",h),l.i18n=h,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/da.d.ts
vendored
Normal file
1
dist_i18n/da.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/da';
|
||||
94
dist_i18n/da.js
Normal file
94
dist_i18n/da.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const o = () => {
|
||||
};
|
||||
function d(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let u = !1;
|
||||
function h(e) {
|
||||
var t = u;
|
||||
try {
|
||||
return u = !0, e();
|
||||
} finally {
|
||||
u = t;
|
||||
}
|
||||
}
|
||||
function k(e, t, n) {
|
||||
if (e == null)
|
||||
return t(void 0), o;
|
||||
const i = h(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
n
|
||||
)
|
||||
);
|
||||
return i.unsubscribe ? () => i.unsubscribe() : i;
|
||||
}
|
||||
const l = [];
|
||||
function p(e, t = o) {
|
||||
let n = null;
|
||||
const i = /* @__PURE__ */ new Set();
|
||||
function a(s) {
|
||||
if (d(e, s) && (e = s, n)) {
|
||||
const c = !l.length;
|
||||
for (const r of i)
|
||||
r[1](), l.push(r, e);
|
||||
if (c) {
|
||||
for (let r = 0; r < l.length; r += 2)
|
||||
l[r][0](l[r + 1]);
|
||||
l.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function g(s) {
|
||||
a(s(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function b(s, c = o) {
|
||||
const r = [s, c];
|
||||
return i.add(r), i.size === 1 && (n = t(a, g) || o), s(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
i.delete(r), i.size === 0 && n && (n(), n = null);
|
||||
};
|
||||
}
|
||||
return { set: a, update: g, subscribe: b };
|
||||
}
|
||||
function f(e) {
|
||||
let t;
|
||||
return k(e, (n) => t = n)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => f(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(f(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: p({})
|
||||
};
|
||||
const y = {
|
||||
ariaLinkLabel: "Besøg Altcha.org",
|
||||
enterCode: "Indtast kode",
|
||||
enterCodeAria: "Indtast den kode, du hører. Tryk på mellemrumstasten for at afspille lyd.",
|
||||
error: "Verificering mislykkedes. Prøv venligst igen senere.",
|
||||
expired: "Verificering udløbet. Prøv venligst igen.",
|
||||
verificationRequired: "Verificering kræves!",
|
||||
footer: 'Beskyttet af <a href="https://altcha.org/" target="_blank" aria-label="Besøg Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Hent lydudfordring",
|
||||
label: "Jeg er ikke en robot",
|
||||
loading: "Indlæser...",
|
||||
reload: "Genindlæs",
|
||||
verify: "Verificer",
|
||||
verified: "Verificeret",
|
||||
verifying: "Verificerer...",
|
||||
waitAlert: "Verificerer... vent venligst."
|
||||
};
|
||||
globalThis.altchaI18n.set("da", y);
|
||||
export {
|
||||
y as i18n
|
||||
};
|
||||
1
dist_i18n/da.umd.cjs
Normal file
1
dist_i18n/da.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(o,s){typeof exports=="object"&&typeof module<"u"?s(exports):typeof define=="function"&&define.amd?define(["exports"],s):(o=typeof globalThis<"u"?globalThis:o||self,s(o["[name]"]={}))})(this,function(o){"use strict";const s=()=>{};function h(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function p(e){var t=u;try{return u=!0,e()}finally{u=t}}function y(e,t,i){if(e==null)return t(void 0),s;const r=p(()=>e.subscribe(t,i));return r.unsubscribe?()=>r.unsubscribe():r}const a=[];function k(e,t=s){let i=null;const r=new Set;function f(l){if(h(e,l)&&(e=l,i)){const g=!a.length;for(const n of r)n[1](),a.push(n,e);if(g){for(let n=0;n<a.length;n+=2)a[n][0](a[n+1]);a.length=0}}}function b(l){f(l(e))}function T(l,g=s){const n=[l,g];return r.add(n),r.size===1&&(i=t(f,b)||s),l(e),()=>{r.delete(n),r.size===0&&i&&(i(),i=null)}}return{set:f,update:b,subscribe:T}}function c(e){let t;return y(e,i=>t=i)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:k({})};const d={ariaLinkLabel:"Besøg Altcha.org",enterCode:"Indtast kode",enterCodeAria:"Indtast den kode, du hører. Tryk på mellemrumstasten for at afspille lyd.",error:"Verificering mislykkedes. Prøv venligst igen senere.",expired:"Verificering udløbet. Prøv venligst igen.",verificationRequired:"Verificering kræves!",footer:'Beskyttet af <a href="https://altcha.org/" target="_blank" aria-label="Besøg Altcha.org">ALTCHA</a>',getAudioChallenge:"Hent lydudfordring",label:"Jeg er ikke en robot",loading:"Indlæser...",reload:"Genindlæs",verify:"Verificer",verified:"Verificeret",verifying:"Verificerer...",waitAlert:"Verificerer... vent venligst."};globalThis.altchaI18n.set("da",d),o.i18n=d,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/de.d.ts
vendored
Normal file
1
dist_i18n/de.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/de';
|
||||
94
dist_i18n/de.js
Normal file
94
dist_i18n/de.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const u = () => {
|
||||
};
|
||||
function g(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(e) {
|
||||
var t = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = t;
|
||||
}
|
||||
}
|
||||
function p(e, t, n) {
|
||||
if (e == null)
|
||||
return t(void 0), u;
|
||||
const i = d(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
n
|
||||
)
|
||||
);
|
||||
return i.unsubscribe ? () => i.unsubscribe() : i;
|
||||
}
|
||||
const l = [];
|
||||
function T(e, t = u) {
|
||||
let n = null;
|
||||
const i = /* @__PURE__ */ new Set();
|
||||
function o(s) {
|
||||
if (g(e, s) && (e = s, n)) {
|
||||
const a = !l.length;
|
||||
for (const r of i)
|
||||
r[1](), l.push(r, e);
|
||||
if (a) {
|
||||
for (let r = 0; r < l.length; r += 2)
|
||||
l[r][0](l[r + 1]);
|
||||
l.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function f(s) {
|
||||
o(s(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function h(s, a = u) {
|
||||
const r = [s, a];
|
||||
return i.add(r), i.size === 1 && (n = t(o, f) || u), s(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
i.delete(r), i.size === 0 && n && (n(), n = null);
|
||||
};
|
||||
}
|
||||
return { set: o, update: f, subscribe: h };
|
||||
}
|
||||
function b(e) {
|
||||
let t;
|
||||
return p(e, (n) => t = n)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => b(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: T({})
|
||||
};
|
||||
const A = {
|
||||
ariaLinkLabel: "Besuche Altcha.org",
|
||||
enterCode: "Code eingeben",
|
||||
enterCodeAria: "Geben Sie den Code ein, den Sie hören. Drücken Sie die Leertaste, um die Audio abzuspielen.",
|
||||
error: "Überprüfung fehlgeschlagen. Bitte versuchen Sie es später erneut.",
|
||||
expired: "Überprüfung abgelaufen. Bitte versuchen Sie es erneut.",
|
||||
verificationRequired: "Überprüfung erforderlich!",
|
||||
footer: 'Geschützt durch <a href="https://altcha.org/" target="_blank" aria-label="Besuche Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Audio-Herausforderung anfordern",
|
||||
label: "Ich bin kein Roboter",
|
||||
loading: "Lade...",
|
||||
reload: "Neu laden",
|
||||
verify: "Überprüfen",
|
||||
verified: "Überprüft",
|
||||
verifying: "Wird überprüft...",
|
||||
waitAlert: "Überprüfung läuft... bitte warten."
|
||||
};
|
||||
globalThis.altchaI18n.set("de", A);
|
||||
export {
|
||||
A as i18n
|
||||
};
|
||||
1
dist_i18n/de.umd.cjs
Normal file
1
dist_i18n/de.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(u,s){typeof exports=="object"&&typeof module<"u"?s(exports):typeof define=="function"&&define.amd?define(["exports"],s):(u=typeof globalThis<"u"?globalThis:u||self,s(u["[name]"]={}))})(this,function(u){"use strict";const s=()=>{};function g(e,n){return e!=e?n==n:e!==n||e!==null&&typeof e=="object"||typeof e=="function"}let a=!1;function p(e){var n=a;try{return a=!0,e()}finally{a=n}}function T(e,n,r){if(e==null)return n(void 0),s;const i=p(()=>e.subscribe(n,r));return i.unsubscribe?()=>i.unsubscribe():i}const l=[];function y(e,n=s){let r=null;const i=new Set;function f(o){if(g(e,o)&&(e=o,r)){const b=!l.length;for(const t of i)t[1](),l.push(t,e);if(b){for(let t=0;t<l.length;t+=2)l[t][0](l[t+1]);l.length=0}}}function d(o){f(o(e))}function A(o,b=s){const t=[o,b];return i.add(t),i.size===1&&(r=n(f,d)||s),o(e),()=>{i.delete(t),i.size===0&&r&&(r(),r=null)}}return{set:f,update:d,subscribe:A}}function c(e){let n;return T(e,r=>n=r)(),n}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,n)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:n}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const h={ariaLinkLabel:"Besuche Altcha.org",enterCode:"Code eingeben",enterCodeAria:"Geben Sie den Code ein, den Sie hören. Drücken Sie die Leertaste, um die Audio abzuspielen.",error:"Überprüfung fehlgeschlagen. Bitte versuchen Sie es später erneut.",expired:"Überprüfung abgelaufen. Bitte versuchen Sie es erneut.",verificationRequired:"Überprüfung erforderlich!",footer:'Geschützt durch <a href="https://altcha.org/" target="_blank" aria-label="Besuche Altcha.org">ALTCHA</a>',getAudioChallenge:"Audio-Herausforderung anfordern",label:"Ich bin kein Roboter",loading:"Lade...",reload:"Neu laden",verify:"Überprüfen",verified:"Überprüft",verifying:"Wird überprüft...",waitAlert:"Überprüfung läuft... bitte warten."};globalThis.altchaI18n.set("de",h),u.i18n=h,Object.defineProperty(u,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/el.d.ts
vendored
Normal file
1
dist_i18n/el.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/el';
|
||||
94
dist_i18n/el.js
Normal file
94
dist_i18n/el.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const o = () => {
|
||||
};
|
||||
function g(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(e) {
|
||||
var t = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = t;
|
||||
}
|
||||
}
|
||||
function p(e, t, r) {
|
||||
if (e == null)
|
||||
return t(void 0), o;
|
||||
const i = d(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return i.unsubscribe ? () => i.unsubscribe() : i;
|
||||
}
|
||||
const s = [];
|
||||
function T(e, t = o) {
|
||||
let r = null;
|
||||
const i = /* @__PURE__ */ new Set();
|
||||
function a(l) {
|
||||
if (g(e, l) && (e = l, r)) {
|
||||
const u = !s.length;
|
||||
for (const n of i)
|
||||
n[1](), s.push(n, e);
|
||||
if (u) {
|
||||
for (let n = 0; n < s.length; n += 2)
|
||||
s[n][0](s[n + 1]);
|
||||
s.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function f(l) {
|
||||
a(l(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function h(l, u = o) {
|
||||
const n = [l, u];
|
||||
return i.add(n), i.size === 1 && (r = t(a, f) || o), l(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
i.delete(n), i.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: a, update: f, subscribe: h };
|
||||
}
|
||||
function b(e) {
|
||||
let t;
|
||||
return p(e, (r) => t = r)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => b(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: T({})
|
||||
};
|
||||
const A = {
|
||||
ariaLinkLabel: "Επισκεφθείτε το Altcha.org",
|
||||
enterCode: "Εισαγάγετε κωδικό",
|
||||
enterCodeAria: "Εισαγάγετε τον κωδικό που ακούτε. Πατήστε Space για να παίξετε τον ήχο.",
|
||||
error: "Η επαλήθευση απέτυχε. Δοκιμάστε ξανά αργότερα.",
|
||||
expired: "Η επαλήθευση έληξε. Δοκιμάστε ξανά.",
|
||||
verificationRequired: "Απαιτείται έλεγχος!",
|
||||
footer: 'Προστατεύεται από το <a href="https://altcha.org/" target="_blank" aria-label="Επισκεφθείτε το Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Λήψη ηχητικής δοκιμασίας",
|
||||
label: "Δεν είμαι ρομπότ",
|
||||
loading: "Φόρτωση...",
|
||||
reload: "Επαναφόρτωση",
|
||||
verify: "Επαλήθευση",
|
||||
verified: "Επαληθεύτηκε",
|
||||
verifying: "Γίνεται επαλήθευση...",
|
||||
waitAlert: "Γίνεται επαλήθευση... παρακαλώ περιμένετε."
|
||||
};
|
||||
globalThis.altchaI18n.set("el", A);
|
||||
export {
|
||||
A as i18n
|
||||
};
|
||||
1
dist_i18n/el.umd.cjs
Normal file
1
dist_i18n/el.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(s,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(s=typeof globalThis<"u"?globalThis:s||self,o(s["[name]"]={}))})(this,function(s){"use strict";const o=()=>{};function d(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let a=!1;function p(e){var t=a;try{return a=!0,e()}finally{a=t}}function T(e,t,i){if(e==null)return t(void 0),o;const r=p(()=>e.subscribe(t,i));return r.unsubscribe?()=>r.unsubscribe():r}const u=[];function y(e,t=o){let i=null;const r=new Set;function f(l){if(d(e,l)&&(e=l,i)){const b=!u.length;for(const n of r)n[1](),u.push(n,e);if(b){for(let n=0;n<u.length;n+=2)u[n][0](u[n+1]);u.length=0}}}function g(l){f(l(e))}function A(l,b=o){const n=[l,b];return r.add(n),r.size===1&&(i=t(f,g)||o),l(e),()=>{r.delete(n),r.size===0&&i&&(i(),i=null)}}return{set:f,update:g,subscribe:A}}function c(e){let t;return T(e,i=>t=i)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const h={ariaLinkLabel:"Επισκεφθείτε το Altcha.org",enterCode:"Εισαγάγετε κωδικό",enterCodeAria:"Εισαγάγετε τον κωδικό που ακούτε. Πατήστε Space για να παίξετε τον ήχο.",error:"Η επαλήθευση απέτυχε. Δοκιμάστε ξανά αργότερα.",expired:"Η επαλήθευση έληξε. Δοκιμάστε ξανά.",verificationRequired:"Απαιτείται έλεγχος!",footer:'Προστατεύεται από το <a href="https://altcha.org/" target="_blank" aria-label="Επισκεφθείτε το Altcha.org">ALTCHA</a>',getAudioChallenge:"Λήψη ηχητικής δοκιμασίας",label:"Δεν είμαι ρομπότ",loading:"Φόρτωση...",reload:"Επαναφόρτωση",verify:"Επαλήθευση",verified:"Επαληθεύτηκε",verifying:"Γίνεται επαλήθευση...",waitAlert:"Γίνεται επαλήθευση... παρακαλώ περιμένετε."};globalThis.altchaI18n.set("el",h),s.i18n=h,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/en.d.ts
vendored
Normal file
1
dist_i18n/en.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/en';
|
||||
94
dist_i18n/en.js
Normal file
94
dist_i18n/en.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const l = () => {
|
||||
};
|
||||
function h(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let u = !1;
|
||||
function d(e) {
|
||||
var t = u;
|
||||
try {
|
||||
return u = !0, e();
|
||||
} finally {
|
||||
u = t;
|
||||
}
|
||||
}
|
||||
function p(e, t, n) {
|
||||
if (e == null)
|
||||
return t(void 0), l;
|
||||
const r = d(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
n
|
||||
)
|
||||
);
|
||||
return r.unsubscribe ? () => r.unsubscribe() : r;
|
||||
}
|
||||
const o = [];
|
||||
function y(e, t = l) {
|
||||
let n = null;
|
||||
const r = /* @__PURE__ */ new Set();
|
||||
function s(a) {
|
||||
if (h(e, a) && (e = a, n)) {
|
||||
const c = !o.length;
|
||||
for (const i of r)
|
||||
i[1](), o.push(i, e);
|
||||
if (c) {
|
||||
for (let i = 0; i < o.length; i += 2)
|
||||
o[i][0](o[i + 1]);
|
||||
o.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function b(a) {
|
||||
s(a(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function g(a, c = l) {
|
||||
const i = [a, c];
|
||||
return r.add(i), r.size === 1 && (n = t(s, b) || l), a(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
r.delete(i), r.size === 0 && n && (n(), n = null);
|
||||
};
|
||||
}
|
||||
return { set: s, update: b, subscribe: g };
|
||||
}
|
||||
function f(e) {
|
||||
let t;
|
||||
return p(e, (n) => t = n)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => f(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(f(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: y({})
|
||||
};
|
||||
const T = {
|
||||
ariaLinkLabel: "Visit Altcha.org",
|
||||
enterCode: "Enter code",
|
||||
enterCodeAria: "Enter code you hear. Press Space to play audio.",
|
||||
error: "Verification failed. Try again later.",
|
||||
expired: "Verification expired. Try again.",
|
||||
footer: 'Protected by <a href="https://altcha.org/" target="_blank" aria-label="Visit Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Get an audio challenge",
|
||||
label: "I'm not a robot",
|
||||
loading: "Loading...",
|
||||
reload: "Reload",
|
||||
verify: "Verify",
|
||||
verificationRequired: "Verification required!",
|
||||
verified: "Verified",
|
||||
verifying: "Verifying...",
|
||||
waitAlert: "Verifying... please wait."
|
||||
};
|
||||
globalThis.altchaI18n.set("en", T);
|
||||
export {
|
||||
T as i18n
|
||||
};
|
||||
1
dist_i18n/en.umd.cjs
Normal file
1
dist_i18n/en.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(l,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(l=typeof globalThis<"u"?globalThis:l||self,o(l["[name]"]={}))})(this,function(l){"use strict";const o=()=>{};function h(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function p(e){var t=u;try{return u=!0,e()}finally{u=t}}function y(e,t,n){if(e==null)return t(void 0),o;const r=p(()=>e.subscribe(t,n));return r.unsubscribe?()=>r.unsubscribe():r}const s=[];function T(e,t=o){let n=null;const r=new Set;function f(a){if(h(e,a)&&(e=a,n)){const b=!s.length;for(const i of r)i[1](),s.push(i,e);if(b){for(let i=0;i<s.length;i+=2)s[i][0](s[i+1]);s.length=0}}}function g(a){f(a(e))}function V(a,b=o){const i=[a,b];return r.add(i),r.size===1&&(n=t(f,g)||o),a(e),()=>{r.delete(i),r.size===0&&n&&(n(),n=null)}}return{set:f,update:g,subscribe:V}}function c(e){let t;return y(e,n=>t=n)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:T({})};const d={ariaLinkLabel:"Visit Altcha.org",enterCode:"Enter code",enterCodeAria:"Enter code you hear. Press Space to play audio.",error:"Verification failed. Try again later.",expired:"Verification expired. Try again.",footer:'Protected by <a href="https://altcha.org/" target="_blank" aria-label="Visit Altcha.org">ALTCHA</a>',getAudioChallenge:"Get an audio challenge",label:"I'm not a robot",loading:"Loading...",reload:"Reload",verify:"Verify",verificationRequired:"Verification required!",verified:"Verified",verifying:"Verifying...",waitAlert:"Verifying... please wait."};globalThis.altchaI18n.set("en",d),l.i18n=d,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/es-419.d.ts
vendored
Normal file
1
dist_i18n/es-419.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/es-419';
|
||||
94
dist_i18n/es-419.js
Normal file
94
dist_i18n/es-419.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const l = () => {
|
||||
};
|
||||
function h(e, r) {
|
||||
return e != e ? r == r : e !== r || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let u = !1;
|
||||
function d(e) {
|
||||
var r = u;
|
||||
try {
|
||||
return u = !0, e();
|
||||
} finally {
|
||||
u = r;
|
||||
}
|
||||
}
|
||||
function p(e, r, t) {
|
||||
if (e == null)
|
||||
return r(void 0), l;
|
||||
const n = d(
|
||||
() => e.subscribe(
|
||||
r,
|
||||
// @ts-expect-error
|
||||
t
|
||||
)
|
||||
);
|
||||
return n.unsubscribe ? () => n.unsubscribe() : n;
|
||||
}
|
||||
const o = [];
|
||||
function v(e, r = l) {
|
||||
let t = null;
|
||||
const n = /* @__PURE__ */ new Set();
|
||||
function s(a) {
|
||||
if (h(e, a) && (e = a, t)) {
|
||||
const c = !o.length;
|
||||
for (const i of n)
|
||||
i[1](), o.push(i, e);
|
||||
if (c) {
|
||||
for (let i = 0; i < o.length; i += 2)
|
||||
o[i][0](o[i + 1]);
|
||||
o.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function b(a) {
|
||||
s(a(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function g(a, c = l) {
|
||||
const i = [a, c];
|
||||
return n.add(i), n.size === 1 && (t = r(s, b) || l), a(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
n.delete(i), n.size === 0 && t && (t(), t = null);
|
||||
};
|
||||
}
|
||||
return { set: s, update: b, subscribe: g };
|
||||
}
|
||||
function f(e) {
|
||||
let r;
|
||||
return p(e, (t) => r = t)(), r;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => f(globalThis.altchaI18n.store)[e],
|
||||
set: (e, r) => {
|
||||
Object.assign(f(globalThis.altchaI18n.store), {
|
||||
[e]: r
|
||||
}), globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: v({})
|
||||
};
|
||||
const T = {
|
||||
ariaLinkLabel: "Visitar Altcha.org",
|
||||
enterCode: "Ingresa el código",
|
||||
enterCodeAria: "Ingresa el código que escuchas. Presiona Espacio para reproducir el audio.",
|
||||
error: "Falló la verificación. Por favor vuelve a intentarlo más tarde.",
|
||||
expired: "La verificación expiró. Por favor inténtalo de nuevo.",
|
||||
verificationRequired: "¡Verificación requerida!",
|
||||
footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtener un reto de audio",
|
||||
label: "No soy un robot",
|
||||
loading: "Cargando...",
|
||||
reload: "Volver a cargar",
|
||||
verify: "Verificar",
|
||||
verified: "Verificado",
|
||||
verifying: "Verificando...",
|
||||
waitAlert: "Verificando... por favor espera."
|
||||
};
|
||||
globalThis.altchaI18n.set("es-419", T);
|
||||
export {
|
||||
T as i18n
|
||||
};
|
||||
1
dist_i18n/es-419.umd.cjs
Normal file
1
dist_i18n/es-419.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(s,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(s=typeof globalThis<"u"?globalThis:s||self,o(s["[name]"]={}))})(this,function(s){"use strict";const o=()=>{};function h(e,i){return e!=e?i==i:e!==i||e!==null&&typeof e=="object"||typeof e=="function"}let c=!1;function p(e){var i=c;try{return c=!0,e()}finally{c=i}}function T(e,i,r){if(e==null)return i(void 0),o;const n=p(()=>e.subscribe(i,r));return n.unsubscribe?()=>n.unsubscribe():n}const l=[];function v(e,i=o){let r=null;const n=new Set;function f(a){if(h(e,a)&&(e=a,r)){const d=!l.length;for(const t of n)t[1](),l.push(t,e);if(d){for(let t=0;t<l.length;t+=2)l[t][0](l[t+1]);l.length=0}}}function g(a){f(a(e))}function y(a,d=o){const t=[a,d];return n.add(t),n.size===1&&(r=i(f,g)||o),a(e),()=>{n.delete(t),n.size===0&&r&&(r(),r=null)}}return{set:f,update:g,subscribe:y}}function u(e){let i;return T(e,r=>i=r)(),i}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>u(globalThis.altchaI18n.store)[e],set:(e,i)=>{Object.assign(u(globalThis.altchaI18n.store),{[e]:i}),globalThis.altchaI18n.store.set(u(globalThis.altchaI18n.store))},store:v({})};const b={ariaLinkLabel:"Visitar Altcha.org",enterCode:"Ingresa el código",enterCodeAria:"Ingresa el código que escuchas. Presiona Espacio para reproducir el audio.",error:"Falló la verificación. Por favor vuelve a intentarlo más tarde.",expired:"La verificación expiró. Por favor inténtalo de nuevo.",verificationRequired:"¡Verificación requerida!",footer:'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',getAudioChallenge:"Obtener un reto de audio",label:"No soy un robot",loading:"Cargando...",reload:"Volver a cargar",verify:"Verificar",verified:"Verificado",verifying:"Verificando...",waitAlert:"Verificando... por favor espera."};globalThis.altchaI18n.set("es-419",b),s.i18n=b,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/es-es.d.ts
vendored
Normal file
1
dist_i18n/es-es.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/es-es';
|
||||
94
dist_i18n/es-es.js
Normal file
94
dist_i18n/es-es.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const s = () => {
|
||||
};
|
||||
function d(e, r) {
|
||||
return e != e ? r == r : e !== r || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let u = !1;
|
||||
function h(e) {
|
||||
var r = u;
|
||||
try {
|
||||
return u = !0, e();
|
||||
} finally {
|
||||
u = r;
|
||||
}
|
||||
}
|
||||
function p(e, r, i) {
|
||||
if (e == null)
|
||||
return r(void 0), s;
|
||||
const n = h(
|
||||
() => e.subscribe(
|
||||
r,
|
||||
// @ts-expect-error
|
||||
i
|
||||
)
|
||||
);
|
||||
return n.unsubscribe ? () => n.unsubscribe() : n;
|
||||
}
|
||||
const o = [];
|
||||
function T(e, r = s) {
|
||||
let i = null;
|
||||
const n = /* @__PURE__ */ new Set();
|
||||
function l(a) {
|
||||
if (d(e, a) && (e = a, i)) {
|
||||
const c = !o.length;
|
||||
for (const t of n)
|
||||
t[1](), o.push(t, e);
|
||||
if (c) {
|
||||
for (let t = 0; t < o.length; t += 2)
|
||||
o[t][0](o[t + 1]);
|
||||
o.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function b(a) {
|
||||
l(a(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function g(a, c = s) {
|
||||
const t = [a, c];
|
||||
return n.add(t), n.size === 1 && (i = r(l, b) || s), a(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
n.delete(t), n.size === 0 && i && (i(), i = null);
|
||||
};
|
||||
}
|
||||
return { set: l, update: b, subscribe: g };
|
||||
}
|
||||
function f(e) {
|
||||
let r;
|
||||
return p(e, (i) => r = i)(), r;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => f(globalThis.altchaI18n.store)[e],
|
||||
set: (e, r) => {
|
||||
Object.assign(f(globalThis.altchaI18n.store), {
|
||||
[e]: r
|
||||
}), globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: T({})
|
||||
};
|
||||
const I = {
|
||||
ariaLinkLabel: "Visitar Altcha.org",
|
||||
enterCode: "Introduce el código",
|
||||
enterCodeAria: "Introduce el código que escuchas. Pulsa Espacio para reproducir el audio.",
|
||||
error: "Falló la verificación. Por favor intente nuevamente más tarde.",
|
||||
expired: "Verificación expirada. Por favor intente nuevamente.",
|
||||
verificationRequired: "¡Verificación requerida!",
|
||||
footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtener un desafío de audio",
|
||||
label: "No soy un robot",
|
||||
loading: "Cargando...",
|
||||
reload: "Recargar",
|
||||
verify: "Verificar",
|
||||
verified: "Verificado",
|
||||
verifying: "Verificando...",
|
||||
waitAlert: "Verificando... por favor espere."
|
||||
};
|
||||
globalThis.altchaI18n.set("es-es", I);
|
||||
export {
|
||||
I as i18n
|
||||
};
|
||||
1
dist_i18n/es-es.umd.cjs
Normal file
1
dist_i18n/es-es.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(s,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(s=typeof globalThis<"u"?globalThis:s||self,o(s["[name]"]={}))})(this,function(s){"use strict";const o=()=>{};function h(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function p(e){var t=u;try{return u=!0,e()}finally{u=t}}function T(e,t,n){if(e==null)return t(void 0),o;const r=p(()=>e.subscribe(t,n));return r.unsubscribe?()=>r.unsubscribe():r}const l=[];function y(e,t=o){let n=null;const r=new Set;function f(a){if(h(e,a)&&(e=a,n)){const d=!l.length;for(const i of r)i[1](),l.push(i,e);if(d){for(let i=0;i<l.length;i+=2)l[i][0](l[i+1]);l.length=0}}}function g(a){f(a(e))}function v(a,d=o){const i=[a,d];return r.add(i),r.size===1&&(n=t(f,g)||o),a(e),()=>{r.delete(i),r.size===0&&n&&(n(),n=null)}}return{set:f,update:g,subscribe:v}}function c(e){let t;return T(e,n=>t=n)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const b={ariaLinkLabel:"Visitar Altcha.org",enterCode:"Introduce el código",enterCodeAria:"Introduce el código que escuchas. Pulsa Espacio para reproducir el audio.",error:"Falló la verificación. Por favor intente nuevamente más tarde.",expired:"Verificación expirada. Por favor intente nuevamente.",verificationRequired:"¡Verificación requerida!",footer:'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',getAudioChallenge:"Obtener un desafío de audio",label:"No soy un robot",loading:"Cargando...",reload:"Recargar",verify:"Verificar",verified:"Verificado",verifying:"Verificando...",waitAlert:"Verificando... por favor espere."};globalThis.altchaI18n.set("es-es",b),s.i18n=b,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/et.d.ts
vendored
Normal file
1
dist_i18n/et.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/et';
|
||||
94
dist_i18n/et.js
Normal file
94
dist_i18n/et.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const s = () => {
|
||||
};
|
||||
function f(t, e) {
|
||||
return t != t ? e == e : t !== e || t !== null && typeof t == "object" || typeof t == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(t) {
|
||||
var e = c;
|
||||
try {
|
||||
return c = !0, t();
|
||||
} finally {
|
||||
c = e;
|
||||
}
|
||||
}
|
||||
function p(t, e, n) {
|
||||
if (t == null)
|
||||
return e(void 0), s;
|
||||
const a = d(
|
||||
() => t.subscribe(
|
||||
e,
|
||||
// @ts-expect-error
|
||||
n
|
||||
)
|
||||
);
|
||||
return a.unsubscribe ? () => a.unsubscribe() : a;
|
||||
}
|
||||
const l = [];
|
||||
function k(t, e = s) {
|
||||
let n = null;
|
||||
const a = /* @__PURE__ */ new Set();
|
||||
function r(o) {
|
||||
if (f(t, o) && (t = o, n)) {
|
||||
const u = !l.length;
|
||||
for (const i of a)
|
||||
i[1](), l.push(i, t);
|
||||
if (u) {
|
||||
for (let i = 0; i < l.length; i += 2)
|
||||
l[i][0](l[i + 1]);
|
||||
l.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function h(o) {
|
||||
r(o(
|
||||
/** @type {T} */
|
||||
t
|
||||
));
|
||||
}
|
||||
function g(o, u = s) {
|
||||
const i = [o, u];
|
||||
return a.add(i), a.size === 1 && (n = e(r, h) || s), o(
|
||||
/** @type {T} */
|
||||
t
|
||||
), () => {
|
||||
a.delete(i), a.size === 0 && n && (n(), n = null);
|
||||
};
|
||||
}
|
||||
return { set: r, update: h, subscribe: g };
|
||||
}
|
||||
function b(t) {
|
||||
let e;
|
||||
return p(t, (n) => e = n)(), e;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (t) => b(globalThis.altchaI18n.store)[t],
|
||||
set: (t, e) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[t]: e
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: k({})
|
||||
};
|
||||
const K = {
|
||||
ariaLinkLabel: "Külasta Altcha.org",
|
||||
enterCode: "Sisesta kood",
|
||||
enterCodeAria: "Sisestage kuuldu kood. Vajutage tühikut, et esitada heli.",
|
||||
error: "Kinnitamine ebaõnnestus. Proovi hiljem uuesti.",
|
||||
expired: "Kinnitamine aegus. Proovi uuesti.",
|
||||
verificationRequired: "Kontroll on vajalik!",
|
||||
footer: 'Kaitstud <a href="https://altcha.org/" target="_blank" aria-label="Külasta Altcha.org">ALTCHA</a> poolt',
|
||||
getAudioChallenge: "Hangi heliülesanne",
|
||||
label: "Ma ei ole robot",
|
||||
loading: "Laadimine...",
|
||||
reload: "Laadi uuesti",
|
||||
verify: "Kinnita",
|
||||
verified: "Kinnitatud",
|
||||
verifying: "Kinnitamine...",
|
||||
waitAlert: "Kinnitamine... palun oota."
|
||||
};
|
||||
globalThis.altchaI18n.set("et", K);
|
||||
export {
|
||||
K as i18n
|
||||
};
|
||||
1
dist_i18n/et.umd.cjs
Normal file
1
dist_i18n/et.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(l,a){typeof exports=="object"&&typeof module<"u"?a(exports):typeof define=="function"&&define.amd?define(["exports"],a):(l=typeof globalThis<"u"?globalThis:l||self,a(l["[name]"]={}))})(this,function(l){"use strict";const a=()=>{};function g(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function p(e){var t=u;try{return u=!0,e()}finally{u=t}}function T(e,t,i){if(e==null)return t(void 0),a;const o=p(()=>e.subscribe(t,i));return o.unsubscribe?()=>o.unsubscribe():o}const r=[];function k(e,t=a){let i=null;const o=new Set;function f(s){if(g(e,s)&&(e=s,i)){const b=!r.length;for(const n of o)n[1](),r.push(n,e);if(b){for(let n=0;n<r.length;n+=2)r[n][0](r[n+1]);r.length=0}}}function d(s){f(s(e))}function m(s,b=a){const n=[s,b];return o.add(n),o.size===1&&(i=t(f,d)||a),s(e),()=>{o.delete(n),o.size===0&&i&&(i(),i=null)}}return{set:f,update:d,subscribe:m}}function c(e){let t;return T(e,i=>t=i)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:k({})};const h={ariaLinkLabel:"Külasta Altcha.org",enterCode:"Sisesta kood",enterCodeAria:"Sisestage kuuldu kood. Vajutage tühikut, et esitada heli.",error:"Kinnitamine ebaõnnestus. Proovi hiljem uuesti.",expired:"Kinnitamine aegus. Proovi uuesti.",verificationRequired:"Kontroll on vajalik!",footer:'Kaitstud <a href="https://altcha.org/" target="_blank" aria-label="Külasta Altcha.org">ALTCHA</a> poolt',getAudioChallenge:"Hangi heliülesanne",label:"Ma ei ole robot",loading:"Laadimine...",reload:"Laadi uuesti",verify:"Kinnita",verified:"Kinnitatud",verifying:"Kinnitamine...",waitAlert:"Kinnitamine... palun oota."};globalThis.altchaI18n.set("et",h),l.i18n=h,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/eu.d.ts
vendored
Normal file
1
dist_i18n/eu.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/eu';
|
||||
94
dist_i18n/eu.js
Normal file
94
dist_i18n/eu.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const u = () => {
|
||||
};
|
||||
function h(t, e) {
|
||||
return t != t ? e == e : t !== e || t !== null && typeof t == "object" || typeof t == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(t) {
|
||||
var e = c;
|
||||
try {
|
||||
return c = !0, t();
|
||||
} finally {
|
||||
c = e;
|
||||
}
|
||||
}
|
||||
function z(t, e, i) {
|
||||
if (t == null)
|
||||
return e(void 0), u;
|
||||
const r = d(
|
||||
() => t.subscribe(
|
||||
e,
|
||||
// @ts-expect-error
|
||||
i
|
||||
)
|
||||
);
|
||||
return r.unsubscribe ? () => r.unsubscribe() : r;
|
||||
}
|
||||
const o = [];
|
||||
function k(t, e = u) {
|
||||
let i = null;
|
||||
const r = /* @__PURE__ */ new Set();
|
||||
function s(n) {
|
||||
if (h(t, n) && (t = n, i)) {
|
||||
const l = !o.length;
|
||||
for (const a of r)
|
||||
a[1](), o.push(a, t);
|
||||
if (l) {
|
||||
for (let a = 0; a < o.length; a += 2)
|
||||
o[a][0](o[a + 1]);
|
||||
o.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function g(n) {
|
||||
s(n(
|
||||
/** @type {T} */
|
||||
t
|
||||
));
|
||||
}
|
||||
function f(n, l = u) {
|
||||
const a = [n, l];
|
||||
return r.add(a), r.size === 1 && (i = e(s, g) || u), n(
|
||||
/** @type {T} */
|
||||
t
|
||||
), () => {
|
||||
r.delete(a), r.size === 0 && i && (i(), i = null);
|
||||
};
|
||||
}
|
||||
return { set: s, update: g, subscribe: f };
|
||||
}
|
||||
function b(t) {
|
||||
let e;
|
||||
return z(t, (i) => e = i)(), e;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (t) => b(globalThis.altchaI18n.store)[t],
|
||||
set: (t, e) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[t]: e
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: k({})
|
||||
};
|
||||
const p = {
|
||||
ariaLinkLabel: "Bisitatu Altcha.org",
|
||||
enterCode: "Sartu kodea",
|
||||
enterCodeAria: "Sartu entzun duzun kodea. Sakatu Espazioa audioa erreproduzitzeko.",
|
||||
error: "Egiaztatzeak huts egin du. Saiatu berriro geroago.",
|
||||
expired: "Egiaztatzea iraungi da. Saiatu berriro.",
|
||||
verificationRequired: "Egiaztatzea beharrezkoa da!",
|
||||
footer: '<a href="https://altcha.org/" target="_blank" aria-label="Bisitatu Altcha.org">ALTCHA</a>k babestuta',
|
||||
getAudioChallenge: "Jaso audio-erronka bat",
|
||||
label: "Ez naiz robot bat",
|
||||
loading: "Kargatzen...",
|
||||
reload: "Birkargatu",
|
||||
verify: "Egiaztatu",
|
||||
verified: "Egiaztatuta",
|
||||
verifying: "Egiaztatzen...",
|
||||
waitAlert: "Egiaztatzen... itxaron mesedez."
|
||||
};
|
||||
globalThis.altchaI18n.set("eu", p);
|
||||
export {
|
||||
p as i18n
|
||||
};
|
||||
1
dist_i18n/eu.umd.cjs
Normal file
1
dist_i18n/eu.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(u,r){typeof exports=="object"&&typeof module<"u"?r(exports):typeof define=="function"&&define.amd?define(["exports"],r):(u=typeof globalThis<"u"?globalThis:u||self,r(u["[name]"]={}))})(this,function(u){"use strict";const r=()=>{};function h(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let l=!1;function z(e){var t=l;try{return l=!0,e()}finally{l=t}}function p(e,t,i){if(e==null)return t(void 0),r;const n=z(()=>e.subscribe(t,i));return n.unsubscribe?()=>n.unsubscribe():n}const s=[];function k(e,t=r){let i=null;const n=new Set;function b(o){if(h(e,o)&&(e=o,i)){const f=!s.length;for(const a of n)a[1](),s.push(a,e);if(f){for(let a=0;a<s.length;a+=2)s[a][0](s[a+1]);s.length=0}}}function d(o){b(o(e))}function T(o,f=r){const a=[o,f];return n.add(a),n.size===1&&(i=t(b,d)||r),o(e),()=>{n.delete(a),n.size===0&&i&&(i(),i=null)}}return{set:b,update:d,subscribe:T}}function c(e){let t;return p(e,i=>t=i)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:k({})};const g={ariaLinkLabel:"Bisitatu Altcha.org",enterCode:"Sartu kodea",enterCodeAria:"Sartu entzun duzun kodea. Sakatu Espazioa audioa erreproduzitzeko.",error:"Egiaztatzeak huts egin du. Saiatu berriro geroago.",expired:"Egiaztatzea iraungi da. Saiatu berriro.",verificationRequired:"Egiaztatzea beharrezkoa da!",footer:'<a href="https://altcha.org/" target="_blank" aria-label="Bisitatu Altcha.org">ALTCHA</a>k babestuta',getAudioChallenge:"Jaso audio-erronka bat",label:"Ez naiz robot bat",loading:"Kargatzen...",reload:"Birkargatu",verify:"Egiaztatu",verified:"Egiaztatuta",verifying:"Egiaztatzen...",waitAlert:"Egiaztatzen... itxaron mesedez."};globalThis.altchaI18n.set("eu",g),u.i18n=g,Object.defineProperty(u,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/europe.d.ts
vendored
Normal file
1
dist_i18n/europe.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/europe';
|
||||
650
dist_i18n/europe.js
Normal file
650
dist_i18n/europe.js
Normal file
@@ -0,0 +1,650 @@
|
||||
const l = () => {
|
||||
};
|
||||
function v(e, a) {
|
||||
return e != e ? a == a : e !== a || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let g = !1;
|
||||
function k(e) {
|
||||
var a = g;
|
||||
try {
|
||||
return g = !0, e();
|
||||
} finally {
|
||||
g = a;
|
||||
}
|
||||
}
|
||||
function b(e, a, r) {
|
||||
if (e == null)
|
||||
return a(void 0), l;
|
||||
const t = k(
|
||||
() => e.subscribe(
|
||||
a,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return t.unsubscribe ? () => t.unsubscribe() : t;
|
||||
}
|
||||
const n = [];
|
||||
function A(e, a = l) {
|
||||
let r = null;
|
||||
const t = /* @__PURE__ */ new Set();
|
||||
function d(o) {
|
||||
if (v(e, o) && (e = o, r)) {
|
||||
const s = !n.length;
|
||||
for (const i of t)
|
||||
i[1](), n.push(i, e);
|
||||
if (s) {
|
||||
for (let i = 0; i < n.length; i += 2)
|
||||
n[i][0](n[i + 1]);
|
||||
n.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function f(o) {
|
||||
d(o(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function h(o, s = l) {
|
||||
const i = [o, s];
|
||||
return t.add(i), t.size === 1 && (r = a(d, f) || l), o(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
t.delete(i), t.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: d, update: f, subscribe: h };
|
||||
}
|
||||
function c(e) {
|
||||
let a;
|
||||
return b(e, (r) => a = r)(), a;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => c(globalThis.altchaI18n.store)[e],
|
||||
set: (e, a) => {
|
||||
Object.assign(c(globalThis.altchaI18n.store), {
|
||||
[e]: a
|
||||
}), globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: A({})
|
||||
};
|
||||
const p = {
|
||||
ariaLinkLabel: "Visita Altcha.org",
|
||||
enterCode: "Introdueix el codi",
|
||||
enterCodeAria: "Introdueix el codi que escoltes. Prem Espai per reproduir l’àudio.",
|
||||
error: "Verificació fallida. Torna-ho a provar més tard.",
|
||||
expired: "Verificació expirada. Torna-ho a provar.",
|
||||
footer: 'Protegit per <a href="https://altcha.org/" target="_blank" aria-label="Visita Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtenir un desafiament d’àudio",
|
||||
label: "No sóc un robot",
|
||||
loading: "Carregant...",
|
||||
reload: "Torna a carregar",
|
||||
verify: "Verificar",
|
||||
verificationRequired: "Es requereix verificació!",
|
||||
verified: "Verificat",
|
||||
verifying: "Verificant...",
|
||||
waitAlert: "Verificant... si us plau, espera."
|
||||
};
|
||||
globalThis.altchaI18n.set("ca", p);
|
||||
const j = {
|
||||
ariaLinkLabel: "Visitez Altcha.org",
|
||||
enterCode: "Entrez le code",
|
||||
enterCodeAria: "Entrez le code que vous entendez. Appuyez sur Espace pour écouter l'audio.",
|
||||
error: "Échec de la vérification. Essayez à nouveau plus tard.",
|
||||
expired: "La vérification a expiré. Essayez à nouveau.",
|
||||
verificationRequired: "Vérification requise !",
|
||||
footer: 'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtenir un défi audio",
|
||||
label: "Pas un robot",
|
||||
loading: "Chargement...",
|
||||
reload: "Recharger",
|
||||
verify: "Vérifier",
|
||||
verified: "Vérifié",
|
||||
verifying: "Vérification en cours...",
|
||||
waitAlert: "Vérification en cours... veuillez patienter."
|
||||
};
|
||||
globalThis.altchaI18n.set("fr-fr", j);
|
||||
const C = {
|
||||
ariaLinkLabel: "Besuche Altcha.org",
|
||||
enterCode: "Code eingeben",
|
||||
enterCodeAria: "Geben Sie den Code ein, den Sie hören. Drücken Sie die Leertaste, um die Audio abzuspielen.",
|
||||
error: "Überprüfung fehlgeschlagen. Bitte versuchen Sie es später erneut.",
|
||||
expired: "Überprüfung abgelaufen. Bitte versuchen Sie es erneut.",
|
||||
verificationRequired: "Überprüfung erforderlich!",
|
||||
footer: 'Geschützt durch <a href="https://altcha.org/" target="_blank" aria-label="Besuche Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Audio-Herausforderung anfordern",
|
||||
label: "Ich bin kein Roboter",
|
||||
loading: "Lade...",
|
||||
reload: "Neu laden",
|
||||
verify: "Überprüfen",
|
||||
verified: "Überprüft",
|
||||
verifying: "Wird überprüft...",
|
||||
waitAlert: "Überprüfung läuft... bitte warten."
|
||||
};
|
||||
globalThis.altchaI18n.set("de", C);
|
||||
const y = {
|
||||
ariaLinkLabel: "Bezoek Altcha.org",
|
||||
enterCode: "Voer code in",
|
||||
enterCodeAria: "Voer de code in die je hoort. Druk op Spatie om de audio af te spelen.",
|
||||
error: "Verificatie mislukt. Probeer het later opnieuw.",
|
||||
expired: "Verificatie verlopen. Probeer het opnieuw.",
|
||||
verificationRequired: "Verificatie vereist!",
|
||||
footer: 'Beschermd door <a href="https://altcha.org/" target="_blank" aria-label="Bezoek Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Audio-uitdaging ontvangen",
|
||||
label: "Ik ben geen robot",
|
||||
loading: "Laden...",
|
||||
reload: "Herladen",
|
||||
verify: "Verifiëren",
|
||||
verified: "Geverifieerd",
|
||||
verifying: "Bezig met verifiëren...",
|
||||
waitAlert: "Bezig met verifiëren... even geduld a.u.b."
|
||||
};
|
||||
globalThis.altchaI18n.set("nl", y);
|
||||
const V = {
|
||||
ariaLinkLabel: "Tabhair cuairt ar Altcha.org",
|
||||
enterCode: "Iontráil cód",
|
||||
enterCodeAria: "Cuir isteach an cód a chloiseann tú. Brúigh Spás chun an fuaime a sheinm.",
|
||||
error: "Theip ar an bhfíorú. Bain triail eile as níos déanaí.",
|
||||
expired: "Tá an fíorú as feidhm. Bain triail eile as.",
|
||||
verificationRequired: "Fíorú riachtanach!",
|
||||
footer: 'Cosanta ag <a href="https://altcha.org/" target="_blank" aria-label="Tabhair cuairt ar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Faigh dúshlán fuaime",
|
||||
label: "Níl mé i mo róbat",
|
||||
loading: "Á luchtú...",
|
||||
reload: "Athluchtaigh",
|
||||
verify: "Fíoraigh",
|
||||
verified: "Fíoraithe",
|
||||
verifying: "Fíorú ar siúl...",
|
||||
waitAlert: "Fíorú ar siúl... fan go fóill."
|
||||
};
|
||||
globalThis.altchaI18n.set("ga", V);
|
||||
const m = {
|
||||
ariaLinkLabel: "Visita Altcha.org",
|
||||
enterCode: "Inserisci il codice",
|
||||
enterCodeAria: "Inserisci il codice che senti. Premi Spazio per riprodurre l'audio.",
|
||||
error: "Verifica fallita. Riprova più tardi.",
|
||||
expired: "Verifica scaduta. Riprova.",
|
||||
verificationRequired: "Verifica richiesta!",
|
||||
footer: 'Protetto da <a href="https://altcha.org/" target="_blank" aria-label="Visita Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Ottieni una sfida audio",
|
||||
label: "Non sono un robot",
|
||||
loading: "Caricamento...",
|
||||
reload: "Ricarica",
|
||||
verify: "Verifica",
|
||||
verified: "Verificato",
|
||||
verifying: "Verifica in corso...",
|
||||
waitAlert: "Verifica in corso... attendere."
|
||||
};
|
||||
globalThis.altchaI18n.set("it", m);
|
||||
const L = {
|
||||
ariaLinkLabel: "Visitar Altcha.org",
|
||||
enterCode: "Introduza o código",
|
||||
enterCodeAria: "Introduza o código que ouve. Prima Espaço para reproduzir o áudio.",
|
||||
error: "A verificação falhou. Por favor, tente novamente mais tarde.",
|
||||
expired: "Verificação expirada. Por favor, tente novamente.",
|
||||
verificationRequired: "Verificação necessária!",
|
||||
footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obter desafio de áudio",
|
||||
label: "Não sou um robô",
|
||||
loading: "A carregar...",
|
||||
reload: "Recarregar",
|
||||
verify: "Verificar",
|
||||
verified: "Verificado",
|
||||
verifying: "A verificar...",
|
||||
waitAlert: "A verificar... por favor aguarde."
|
||||
};
|
||||
globalThis.altchaI18n.set("pt-pt", L);
|
||||
const z = {
|
||||
ariaLinkLabel: "Visitar Altcha.org",
|
||||
enterCode: "Introduce el código",
|
||||
enterCodeAria: "Introduce el código que escuchas. Pulsa Espacio para reproducir el audio.",
|
||||
error: "Falló la verificación. Por favor intente nuevamente más tarde.",
|
||||
expired: "Verificación expirada. Por favor intente nuevamente.",
|
||||
verificationRequired: "¡Verificación requerida!",
|
||||
footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtener un desafío de audio",
|
||||
label: "No soy un robot",
|
||||
loading: "Cargando...",
|
||||
reload: "Recargar",
|
||||
verify: "Verificar",
|
||||
verified: "Verificado",
|
||||
verifying: "Verificando...",
|
||||
waitAlert: "Verificando... por favor espere."
|
||||
};
|
||||
globalThis.altchaI18n.set("es-es", z);
|
||||
const T = {
|
||||
ariaLinkLabel: "Bisitatu Altcha.org",
|
||||
enterCode: "Sartu kodea",
|
||||
enterCodeAria: "Sartu entzun duzun kodea. Sakatu Espazioa audioa erreproduzitzeko.",
|
||||
error: "Egiaztatzeak huts egin du. Saiatu berriro geroago.",
|
||||
expired: "Egiaztatzea iraungi da. Saiatu berriro.",
|
||||
verificationRequired: "Egiaztatzea beharrezkoa da!",
|
||||
footer: '<a href="https://altcha.org/" target="_blank" aria-label="Bisitatu Altcha.org">ALTCHA</a>k babestuta',
|
||||
getAudioChallenge: "Jaso audio-erronka bat",
|
||||
label: "Ez naiz robot bat",
|
||||
loading: "Kargatzen...",
|
||||
reload: "Birkargatu",
|
||||
verify: "Egiaztatu",
|
||||
verified: "Egiaztatuta",
|
||||
verifying: "Egiaztatzen...",
|
||||
waitAlert: "Egiaztatzen... itxaron mesedez."
|
||||
};
|
||||
globalThis.altchaI18n.set("eu", T);
|
||||
const P = {
|
||||
ariaLinkLabel: "Visit Altcha.org",
|
||||
enterCode: "Enter code",
|
||||
enterCodeAria: "Enter code you hear. Press Space to play audio.",
|
||||
error: "Verification failed. Try again later.",
|
||||
expired: "Verification expired. Try again.",
|
||||
footer: 'Protected by <a href="https://altcha.org/" target="_blank" aria-label="Visit Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Get an audio challenge",
|
||||
label: "I'm not a robot",
|
||||
loading: "Loading...",
|
||||
reload: "Reload",
|
||||
verify: "Verify",
|
||||
verificationRequired: "Verification required!",
|
||||
verified: "Verified",
|
||||
verifying: "Verifying...",
|
||||
waitAlert: "Verifying... please wait."
|
||||
};
|
||||
globalThis.altchaI18n.set("en", P);
|
||||
const I = {
|
||||
ariaLinkLabel: "Besøg Altcha.org",
|
||||
enterCode: "Indtast kode",
|
||||
enterCodeAria: "Indtast den kode, du hører. Tryk på mellemrumstasten for at afspille lyd.",
|
||||
error: "Verificering mislykkedes. Prøv venligst igen senere.",
|
||||
expired: "Verificering udløbet. Prøv venligst igen.",
|
||||
verificationRequired: "Verificering kræves!",
|
||||
footer: 'Beskyttet af <a href="https://altcha.org/" target="_blank" aria-label="Besøg Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Hent lydudfordring",
|
||||
label: "Jeg er ikke en robot",
|
||||
loading: "Indlæser...",
|
||||
reload: "Genindlæs",
|
||||
verify: "Verificer",
|
||||
verified: "Verificeret",
|
||||
verifying: "Verificerer...",
|
||||
waitAlert: "Verificerer... vent venligst."
|
||||
};
|
||||
globalThis.altchaI18n.set("da", I);
|
||||
const w = {
|
||||
ariaLinkLabel: "Besök Altcha.org",
|
||||
enterCode: "Ange kod",
|
||||
enterCodeAria: "Ange koden du hör. Tryck på mellanslag för att spela upp ljudet.",
|
||||
error: "Verifiering misslyckades. Försök igen senare.",
|
||||
expired: "Verifieringen har gått ut. Försök igen.",
|
||||
verificationRequired: "Verifiering krävs!",
|
||||
footer: 'Skyddad av <a href="https://altcha.org/" target="_blank" aria-label="Besök Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Få ljudutmaning",
|
||||
label: "Jag är inte en robot",
|
||||
loading: "Laddar...",
|
||||
reload: "Ladda om",
|
||||
verify: "Verifiera",
|
||||
verified: "Verifierad",
|
||||
verifying: "Verifierar...",
|
||||
waitAlert: "Verifierar... vänligen vänta."
|
||||
};
|
||||
globalThis.altchaI18n.set("sv", w);
|
||||
const S = {
|
||||
ariaLinkLabel: "Vieraile sivulla Altcha.org",
|
||||
enterCode: "Syötä koodi",
|
||||
enterCodeAria: "Kirjoita kuulemasi koodi. Paina välilyöntiä toistaaksesi äänen.",
|
||||
error: "Varmennus epäonnistui. Yritä myöhemmin uudelleen.",
|
||||
expired: "Varmennus vanhentui. Yritä uudelleen.",
|
||||
verificationRequired: "Vahvistus vaaditaan!",
|
||||
footer: 'Suojattu <a href="https://altcha.org/" target="_blank" aria-label="Vieraile sivulla Altcha.org">ALTCHA</a>:lla',
|
||||
getAudioChallenge: "Hae äänitehtävä",
|
||||
label: "En ole robotti",
|
||||
loading: "Ladataan...",
|
||||
reload: "Lataa uudelleen",
|
||||
verify: "Vahvista",
|
||||
verified: "Vahvistettu",
|
||||
verifying: "Vahvistetaan...",
|
||||
waitAlert: "Vahvistetaan... odota hetki."
|
||||
};
|
||||
globalThis.altchaI18n.set("fi", S);
|
||||
const q = {
|
||||
ariaLinkLabel: "Külasta Altcha.org",
|
||||
enterCode: "Sisesta kood",
|
||||
enterCodeAria: "Sisestage kuuldu kood. Vajutage tühikut, et esitada heli.",
|
||||
error: "Kinnitamine ebaõnnestus. Proovi hiljem uuesti.",
|
||||
expired: "Kinnitamine aegus. Proovi uuesti.",
|
||||
verificationRequired: "Kontroll on vajalik!",
|
||||
footer: 'Kaitstud <a href="https://altcha.org/" target="_blank" aria-label="Külasta Altcha.org">ALTCHA</a> poolt',
|
||||
getAudioChallenge: "Hangi heliülesanne",
|
||||
label: "Ma ei ole robot",
|
||||
loading: "Laadimine...",
|
||||
reload: "Laadi uuesti",
|
||||
verify: "Kinnita",
|
||||
verified: "Kinnitatud",
|
||||
verifying: "Kinnitamine...",
|
||||
waitAlert: "Kinnitamine... palun oota."
|
||||
};
|
||||
globalThis.altchaI18n.set("et", q);
|
||||
const u = {
|
||||
ariaLinkLabel: "Besøk Altcha.org",
|
||||
enterCode: "Skriv inn kode",
|
||||
enterCodeAria: "Skriv inn koden du hører. Trykk på Space for å spille av lyden.",
|
||||
error: "Verifisering mislyktes. Prøv igjen senere.",
|
||||
expired: "Verifiseringen utløp. Prøv igjen.",
|
||||
footer: 'Beskyttet av <a href="https://altcha.org/" target="_blank" aria-label="Besøk Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Få en lydutfordring",
|
||||
label: "Jeg er ikke en robot",
|
||||
loading: "Laster...",
|
||||
reload: "Last på nytt",
|
||||
verify: "Verifiser",
|
||||
verificationRequired: "Verifisering kreves!",
|
||||
verified: "Verifisert",
|
||||
verifying: "Verifiserer...",
|
||||
waitAlert: "Verifiserer... vennligst vent."
|
||||
};
|
||||
globalThis.altchaI18n.set("nb", u);
|
||||
globalThis.altchaI18n.set("no", u);
|
||||
const x = {
|
||||
ariaLinkLabel: "Heimsækja Altcha.org",
|
||||
enterCode: "Sláðu inn kóða",
|
||||
enterCodeAria: "Sláðu inn kóðann sem þú heyrir. Ýttu á Space til að spila hljóðið.",
|
||||
error: "Staðfesting mistókst. Reyndu aftur síðar.",
|
||||
expired: "Staðfesting er útrunnin. Reyndu aftur.",
|
||||
footer: 'Verndað af <a href="https://altcha.org/" target="_blank" aria-label="Heimsækja Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Fá hljóðáskorun",
|
||||
label: "Ég er ekki robot",
|
||||
loading: "Hleður...",
|
||||
reload: "Hleð aftur",
|
||||
verify: "Staðfesta",
|
||||
verificationRequired: "Staðfesting er nauðsynleg!",
|
||||
verified: "Staðfest",
|
||||
verifying: "Að staðfesta...",
|
||||
waitAlert: "Að staðfesta... vinsamlegast bíða."
|
||||
};
|
||||
globalThis.altchaI18n.set("is", x);
|
||||
const R = {
|
||||
ariaLinkLabel: "Apsilankykite Altcha.org",
|
||||
enterCode: "Įveskite kodą",
|
||||
enterCodeAria: "Įveskite girdimą kodą. Paspauskite tarpo klavišą, kad grotumėte garso įrašą.",
|
||||
error: "Patvirtinimas nepavyko. Bandykite vėliau.",
|
||||
expired: "Patvirtinimo laikas baigėsi. Bandykite dar kartą.",
|
||||
verificationRequired: "Reikalingas patvirtinimas!",
|
||||
footer: 'Apsaugota <a href="https://altcha.org/" target="_blank" aria-label="Apsilankykite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Gauti garso užduotį",
|
||||
label: "Aš nesu robotas",
|
||||
loading: "Įkeliama...",
|
||||
reload: "Įkelti iš naujo",
|
||||
verify: "Patvirtinti",
|
||||
verified: "Patvirtinta",
|
||||
verifying: "Tikrinama...",
|
||||
waitAlert: "Tikrinama... prašome palaukti."
|
||||
};
|
||||
globalThis.altchaI18n.set("lt", R);
|
||||
const H = {
|
||||
ariaLinkLabel: "Apmeklējiet Altcha.org",
|
||||
enterCode: "Ievadiet kodu",
|
||||
enterCodeAria: "Ievadiet dzirdamo kodu. Nospiediet atstarpes taustiņu, lai atskaņotu audio.",
|
||||
error: "Verifikācija neizdevās. Mēģiniet vēlāk vēlreiz.",
|
||||
expired: "Verifikācijas laiks ir beidzies. Mēģiniet vēlreiz.",
|
||||
verificationRequired: "Nepieciešama verifikācija!",
|
||||
footer: 'Aizsargāts ar <a href="https://altcha.org/" target="_blank" aria-label="Apmeklējiet Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Saņemt audio izaicinājumu",
|
||||
label: "Es neesmu robots",
|
||||
loading: "Notiek ielāde...",
|
||||
reload: "Pārlādēt",
|
||||
verify: "Verificēt",
|
||||
verified: "Verificēts",
|
||||
verifying: "Notiek verifikācija...",
|
||||
waitAlert: "Notiek verifikācija... lūdzu, uzgaidiet."
|
||||
};
|
||||
globalThis.altchaI18n.set("lv", H);
|
||||
const _ = {
|
||||
ariaLinkLabel: "Posjetite Altcha.org",
|
||||
enterCode: "Unesite kod",
|
||||
enterCodeAria: "Unesite kod koji čujete. Pritisnite Space da biste pustili zvuk.",
|
||||
error: "Verifikacija nije uspjela. Pokušajte ponovo kasnije.",
|
||||
expired: "Verifikacija je istekla. Pokušajte ponovo.",
|
||||
footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posjetite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Dohvatite audio izazov",
|
||||
label: "Nisam robot",
|
||||
loading: "Učitavanje...",
|
||||
reload: "Ponovno učitaj",
|
||||
verify: "Verifikuj",
|
||||
verificationRequired: "Verifikacija je obavezna!",
|
||||
verified: "Verifikovano",
|
||||
verifying: "Verifikacija u toku...",
|
||||
waitAlert: "Verifikacija u toku... molimo vas da sačekate."
|
||||
};
|
||||
globalThis.altchaI18n.set("bs", _);
|
||||
const $ = {
|
||||
ariaLinkLabel: "Navštivte Altcha.org",
|
||||
enterCode: "Zadejte kód",
|
||||
enterCodeAria: "Zadejte kód, který slyšíte. Stisknutím mezerníku přehrajete zvuk.",
|
||||
error: "Ověření selhalo. Zkuste to prosím později.",
|
||||
expired: "Ověření vypršelo. Zkuste to prosím znovu.",
|
||||
verificationRequired: "Vyžaduje se ověření!",
|
||||
footer: 'Chráněno pomocí <a href="https://altcha.org/" target="_blank" aria-label="Navštivte Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Získat audio výzvu",
|
||||
label: "Nejsem robot",
|
||||
loading: "Načítání...",
|
||||
reload: "Znovu načíst",
|
||||
verify: "Ověřit",
|
||||
verified: "Ověřeno",
|
||||
verifying: "Ověřování...",
|
||||
waitAlert: "Probíhá ověření... prosím počkejte."
|
||||
};
|
||||
globalThis.altchaI18n.set("cs", $);
|
||||
const E = {
|
||||
ariaLinkLabel: "Odwiedź Altcha.org",
|
||||
enterCode: "Wprowadź kod",
|
||||
enterCodeAria: "Wpisz kod, który słyszysz. Naciśnij Spację, aby odtworzyć dźwięk.",
|
||||
error: "Weryfikacja nie powiodła się. Spróbuj ponownie później.",
|
||||
expired: "Weryfikacja wygasła. Spróbuj ponownie.",
|
||||
verificationRequired: "Wymagana weryfikacja!",
|
||||
footer: 'Chronione przez <a href="https://altcha.org/" target="_blank" aria-label="Odwiedź Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Pobierz zadanie dźwiękowe",
|
||||
label: "Nie jestem robotem",
|
||||
loading: "Ładowanie...",
|
||||
reload: "Odśwież",
|
||||
verify: "Zweryfikuj",
|
||||
verified: "Zweryfikowano",
|
||||
verifying: "Weryfikacja...",
|
||||
waitAlert: "Trwa weryfikacja... proszę czekać."
|
||||
};
|
||||
globalThis.altchaI18n.set("pl", E);
|
||||
const B = {
|
||||
ariaLinkLabel: "Látogass el az Altcha.org oldalra",
|
||||
enterCode: "Írja be a kódot",
|
||||
enterCodeAria: "Írja be a hallott kódot. Nyomja meg a Szóköz billentyűt a hang lejátszásához.",
|
||||
error: "A hitelesítés nem sikerült. Próbáld meg később újra.",
|
||||
expired: "A hitelesítés lejárt. Próbáld újra.",
|
||||
verificationRequired: "Ellenőrzés szükséges!",
|
||||
footer: 'Védve a következő által: <a href="https://altcha.org/" target="_blank" aria-label="Látogass el az Altcha.org oldalra">ALTCHA</a>',
|
||||
getAudioChallenge: "Hangalapú kihívás kérése",
|
||||
label: "Nem vagyok robot",
|
||||
loading: "Betöltés...",
|
||||
reload: "Újratöltés",
|
||||
verify: "Ellenőrzés",
|
||||
verified: "Ellenőrizve",
|
||||
verifying: "Ellenőrzés folyamatban...",
|
||||
waitAlert: "Ellenőrzés folyamatban... kérlek várj."
|
||||
};
|
||||
globalThis.altchaI18n.set("hu", B);
|
||||
const N = {
|
||||
ariaLinkLabel: "Navštívte Altcha.org",
|
||||
enterCode: "Zadajte kód",
|
||||
enterCodeAria: "Zadajte kód, ktorý počujete. Stlačením medzerníka prehráte zvuk.",
|
||||
error: "Verifikácia zlyhala. Skúste to znova neskôr.",
|
||||
expired: "Verifikácia vypršala. Skúste to znova.",
|
||||
verificationRequired: "Vyžaduje sa overenie!",
|
||||
footer: 'Chránené <a href="https://altcha.org/" target="_blank" aria-label="Navštívte Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Získať audio výzvu",
|
||||
label: "Nie som robot",
|
||||
loading: "Načítava sa...",
|
||||
reload: "Obnoviť",
|
||||
verify: "Verifikovať",
|
||||
verified: "Verifikované",
|
||||
verifying: "Prebieha verifikácia...",
|
||||
waitAlert: "Prebieha verifikácia... prosím čakajte."
|
||||
};
|
||||
globalThis.altchaI18n.set("sk", N);
|
||||
const O = {
|
||||
ariaLinkLabel: "Obiščite Altcha.org",
|
||||
enterCode: "Vnesite kodo",
|
||||
enterCodeAria: "Vnesite kodo, ki jo slišite. Pritisnite preslednico za predvajanje zvoka.",
|
||||
error: "Preverjanje ni uspelo. Poskusite znova kasneje.",
|
||||
expired: "Preverjanje je poteklo. Poskusite znova.",
|
||||
verificationRequired: "Potrebna je preveritev!",
|
||||
footer: 'Zaščiteno z <a href="https://altcha.org/" target="_blank" aria-label="Obiščite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Pridobite zvočni izziv",
|
||||
label: "Nisem robot",
|
||||
loading: "Nalagam...",
|
||||
reload: "Ponovno naloži",
|
||||
verify: "Preveri",
|
||||
verified: "Preverjeno",
|
||||
verifying: "Preverjanje...",
|
||||
waitAlert: "Preverjanje... prosim počakajte."
|
||||
};
|
||||
globalThis.altchaI18n.set("sl", O);
|
||||
const Z = {
|
||||
ariaLinkLabel: "Posjetite Altcha.org",
|
||||
enterCode: "Unesite kod",
|
||||
enterCodeAria: "Unesite kod koji čujete. Pritisnite razmaknicu za reprodukciju zvuka.",
|
||||
error: "Provjera nije uspjela. Molimo pokušajte kasnije.",
|
||||
expired: "Provjera je istekla. Molimo pokušajte ponovo.",
|
||||
verificationRequired: "Potrebna je provjera!",
|
||||
footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posjetite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Audio provjera",
|
||||
label: "Ja nisam robot",
|
||||
loading: "Učitavanje...",
|
||||
reload: "Ponovno učitaj",
|
||||
verify: "Provjeri",
|
||||
verified: "Provjereno",
|
||||
verifying: "Provjeravanje...",
|
||||
waitAlert: "Provjera je u tijeku... molimo pričekajte."
|
||||
};
|
||||
globalThis.altchaI18n.set("hr", Z);
|
||||
const K = {
|
||||
ariaLinkLabel: "Vizitează Altcha.org",
|
||||
enterCode: "Introduceți codul",
|
||||
enterCodeAria: "Introduceți codul pe care îl auziți. Apăsați Spațiu pentru a reda audio.",
|
||||
error: "Verificarea a eșuat. Încearcă din nou mai târziu.",
|
||||
expired: "Verificarea a expirat. Încearcă din nou.",
|
||||
verificationRequired: "Verificare necesară!",
|
||||
footer: 'Protejat de <a href="https://altcha.org/" target="_blank" aria-label="Vizitează Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obține o provocare audio",
|
||||
label: "Nu sunt un robot",
|
||||
loading: "Se încarcă...",
|
||||
reload: "Reîncarcă",
|
||||
verify: "Verifică",
|
||||
verified: "Verificat",
|
||||
verifying: "Se verifică...",
|
||||
waitAlert: "Se verifică... te rugăm să aștepți."
|
||||
};
|
||||
globalThis.altchaI18n.set("ro", K);
|
||||
const F = {
|
||||
ariaLinkLabel: "Посетете Altcha.org",
|
||||
enterCode: "Въведете код",
|
||||
enterCodeAria: "Въведете кода, който чувате. Натиснете Space за възпроизвеждане на аудио.",
|
||||
error: "Проверката неуспешна. Моля, опитайте по-късно.",
|
||||
expired: "Времето за проверка изтече. Моля, опитайте отново.",
|
||||
verificationRequired: "Изисква се проверка!",
|
||||
footer: 'Защитено от <a href="https://altcha.org/" target="_blank" aria-label="Посетете Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Аудио проверка",
|
||||
label: "Аз не съм робот",
|
||||
loading: "Зареждане...",
|
||||
reload: "Презареди",
|
||||
verify: "Провери",
|
||||
verified: "Проверено",
|
||||
verifying: "Проверява се...",
|
||||
waitAlert: "Проверката е в процес... моля изчакайте."
|
||||
};
|
||||
globalThis.altchaI18n.set("bg", F);
|
||||
const U = {
|
||||
ariaLinkLabel: "Επισκεφθείτε το Altcha.org",
|
||||
enterCode: "Εισαγάγετε κωδικό",
|
||||
enterCodeAria: "Εισαγάγετε τον κωδικό που ακούτε. Πατήστε Space για να παίξετε τον ήχο.",
|
||||
error: "Η επαλήθευση απέτυχε. Δοκιμάστε ξανά αργότερα.",
|
||||
expired: "Η επαλήθευση έληξε. Δοκιμάστε ξανά.",
|
||||
verificationRequired: "Απαιτείται έλεγχος!",
|
||||
footer: 'Προστατεύεται από το <a href="https://altcha.org/" target="_blank" aria-label="Επισκεφθείτε το Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Λήψη ηχητικής δοκιμασίας",
|
||||
label: "Δεν είμαι ρομπότ",
|
||||
loading: "Φόρτωση...",
|
||||
reload: "Επαναφόρτωση",
|
||||
verify: "Επαλήθευση",
|
||||
verified: "Επαληθεύτηκε",
|
||||
verifying: "Γίνεται επαλήθευση...",
|
||||
waitAlert: "Γίνεται επαλήθευση... παρακαλώ περιμένετε."
|
||||
};
|
||||
globalThis.altchaI18n.set("el", U);
|
||||
const G = {
|
||||
ariaLinkLabel: "Posetite Altcha.org",
|
||||
enterCode: "Unesite kod",
|
||||
enterCodeAria: "Unesite kod koji čujete. Pritisnite Space da biste pustili zvuk.",
|
||||
error: "Verifikacija nije uspela. Pokušajte ponovo kasnije.",
|
||||
expired: "Verifikacija je istekla. Pokušajte ponovo.",
|
||||
footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posetite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Dohvatite audio izazov",
|
||||
label: "Nisam robot",
|
||||
loading: "Učitavanje...",
|
||||
reload: "Ponovo učitaj",
|
||||
verify: "Verifikuj",
|
||||
verificationRequired: "Verifikacija je obavezna!",
|
||||
verified: "Verifikovano",
|
||||
verifying: "Verifikacija u toku...",
|
||||
waitAlert: "Verifikacija u toku... molimo vas da sačekate."
|
||||
};
|
||||
globalThis.altchaI18n.set("sr", G);
|
||||
const W = {
|
||||
ariaLinkLabel: "Перейти на Altcha.org",
|
||||
enterCode: "Введите код",
|
||||
enterCodeAria: "Введите код, который слышите. Нажмите пробел для воспроизведения аудио.",
|
||||
error: "Ошибка верификации. Попробуйте позже.",
|
||||
expired: "Срок действия верификации истек. Попробуйте снова.",
|
||||
verificationRequired: "Требуется проверка!",
|
||||
footer: 'Защищено <a href="https://altcha.org/" target="_blank" aria-label="Перейти на Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Получить аудио задачу",
|
||||
label: "Я не робот",
|
||||
loading: "Загрузка...",
|
||||
reload: "Перезагрузить",
|
||||
verify: "Проверить",
|
||||
verified: "Проверено",
|
||||
verifying: "Идет проверка...",
|
||||
waitAlert: "Идет проверка... Пожалуйста, подождите."
|
||||
};
|
||||
globalThis.altchaI18n.set("ru", W);
|
||||
const M = {
|
||||
ariaLinkLabel: "Besoek Altcha.org",
|
||||
enterCode: "Voer kode in",
|
||||
enterCodeAria: "Voer die kode in wat jy hoor. Druk Spasie om die klank af te speel.",
|
||||
error: "Verifikasie het misluk. Probeer later weer.",
|
||||
expired: "Verifikasie het verval. Probeer weer.",
|
||||
footer: 'Beskerm deur <a href="https://altcha.org/" target="_blank" aria-label="Besoek Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Kry 'n klankuitdaging",
|
||||
label: "Ek is nie 'n robot nie",
|
||||
loading: "Laai...",
|
||||
reload: "Laai weer",
|
||||
verify: "Verifieer",
|
||||
verificationRequired: "Verifikasie is vereis!",
|
||||
verified: "Geverifieer",
|
||||
verifying: "Verifieer...",
|
||||
waitAlert: "Verifieer... wag asseblief."
|
||||
};
|
||||
globalThis.altchaI18n.set("af", M);
|
||||
const D = {
|
||||
ariaLinkLabel: "Żur Altcha.org",
|
||||
enterCode: "Idħol il-kodiċi",
|
||||
enterCodeAria: "Idħol il-kodiċi li tisma'. Agħfas Spazju biex tindaqq l-awdjo.",
|
||||
error: "Il-verifika falliet. Erġa’ pprova aktar tard.",
|
||||
expired: "Il-verifika skadiet. Erġa’ pprova.",
|
||||
verificationRequired: "Verifika meħtieġa!",
|
||||
footer: 'Protett minn <a href="https://altcha.org/" target="_blank" aria-label="Żur Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Ikseb sfida bl-awdjo",
|
||||
label: "M’inix robot",
|
||||
loading: "Qed jitgħabba...",
|
||||
reload: "Ittella’ mill-ġdid",
|
||||
verify: "Ivverifika",
|
||||
verified: "Ivverifikat",
|
||||
verifying: "Verifika għaddejja...",
|
||||
waitAlert: "Verifika għaddejja... stenna ftit."
|
||||
};
|
||||
globalThis.altchaI18n.set("mt", D);
|
||||
1
dist_i18n/europe.umd.cjs
Normal file
1
dist_i18n/europe.umd.cjs
Normal file
File diff suppressed because one or more lines are too long
1
dist_i18n/fi.d.ts
vendored
Normal file
1
dist_i18n/fi.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/fi';
|
||||
94
dist_i18n/fi.js
Normal file
94
dist_i18n/fi.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const s = () => {
|
||||
};
|
||||
function g(t, e) {
|
||||
return t != t ? e == e : t !== e || t !== null && typeof t == "object" || typeof t == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(t) {
|
||||
var e = c;
|
||||
try {
|
||||
return c = !0, t();
|
||||
} finally {
|
||||
c = e;
|
||||
}
|
||||
}
|
||||
function v(t, e, n) {
|
||||
if (t == null)
|
||||
return e(void 0), s;
|
||||
const a = d(
|
||||
() => t.subscribe(
|
||||
e,
|
||||
// @ts-expect-error
|
||||
n
|
||||
)
|
||||
);
|
||||
return a.unsubscribe ? () => a.unsubscribe() : a;
|
||||
}
|
||||
const r = [];
|
||||
function p(t, e = s) {
|
||||
let n = null;
|
||||
const a = /* @__PURE__ */ new Set();
|
||||
function o(l) {
|
||||
if (g(t, l) && (t = l, n)) {
|
||||
const u = !r.length;
|
||||
for (const i of a)
|
||||
i[1](), r.push(i, t);
|
||||
if (u) {
|
||||
for (let i = 0; i < r.length; i += 2)
|
||||
r[i][0](r[i + 1]);
|
||||
r.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function b(l) {
|
||||
o(l(
|
||||
/** @type {T} */
|
||||
t
|
||||
));
|
||||
}
|
||||
function f(l, u = s) {
|
||||
const i = [l, u];
|
||||
return a.add(i), a.size === 1 && (n = e(o, b) || s), l(
|
||||
/** @type {T} */
|
||||
t
|
||||
), () => {
|
||||
a.delete(i), a.size === 0 && n && (n(), n = null);
|
||||
};
|
||||
}
|
||||
return { set: o, update: b, subscribe: f };
|
||||
}
|
||||
function h(t) {
|
||||
let e;
|
||||
return v(t, (n) => e = n)(), e;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (t) => h(globalThis.altchaI18n.store)[t],
|
||||
set: (t, e) => {
|
||||
Object.assign(h(globalThis.altchaI18n.store), {
|
||||
[t]: e
|
||||
}), globalThis.altchaI18n.store.set(h(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: p({})
|
||||
};
|
||||
const k = {
|
||||
ariaLinkLabel: "Vieraile sivulla Altcha.org",
|
||||
enterCode: "Syötä koodi",
|
||||
enterCodeAria: "Kirjoita kuulemasi koodi. Paina välilyöntiä toistaaksesi äänen.",
|
||||
error: "Varmennus epäonnistui. Yritä myöhemmin uudelleen.",
|
||||
expired: "Varmennus vanhentui. Yritä uudelleen.",
|
||||
verificationRequired: "Vahvistus vaaditaan!",
|
||||
footer: 'Suojattu <a href="https://altcha.org/" target="_blank" aria-label="Vieraile sivulla Altcha.org">ALTCHA</a>:lla',
|
||||
getAudioChallenge: "Hae äänitehtävä",
|
||||
label: "En ole robotti",
|
||||
loading: "Ladataan...",
|
||||
reload: "Lataa uudelleen",
|
||||
verify: "Vahvista",
|
||||
verified: "Vahvistettu",
|
||||
verifying: "Vahvistetaan...",
|
||||
waitAlert: "Vahvistetaan... odota hetki."
|
||||
};
|
||||
globalThis.altchaI18n.set("fi", k);
|
||||
export {
|
||||
k as i18n
|
||||
};
|
||||
1
dist_i18n/fi.umd.cjs
Normal file
1
dist_i18n/fi.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(s,l){typeof exports=="object"&&typeof module<"u"?l(exports):typeof define=="function"&&define.amd?define(["exports"],l):(s=typeof globalThis<"u"?globalThis:s||self,l(s["[name]"]={}))})(this,function(s){"use strict";const l=()=>{};function g(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function p(e){var t=u;try{return u=!0,e()}finally{u=t}}function v(e,t,i){if(e==null)return t(void 0),l;const a=p(()=>e.subscribe(t,i));return a.unsubscribe?()=>a.unsubscribe():a}const r=[];function y(e,t=l){let i=null;const a=new Set;function f(o){if(g(e,o)&&(e=o,i)){const h=!r.length;for(const n of a)n[1](),r.push(n,e);if(h){for(let n=0;n<r.length;n+=2)r[n][0](r[n+1]);r.length=0}}}function d(o){f(o(e))}function T(o,h=l){const n=[o,h];return a.add(n),a.size===1&&(i=t(f,d)||l),o(e),()=>{a.delete(n),a.size===0&&i&&(i(),i=null)}}return{set:f,update:d,subscribe:T}}function c(e){let t;return v(e,i=>t=i)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const b={ariaLinkLabel:"Vieraile sivulla Altcha.org",enterCode:"Syötä koodi",enterCodeAria:"Kirjoita kuulemasi koodi. Paina välilyöntiä toistaaksesi äänen.",error:"Varmennus epäonnistui. Yritä myöhemmin uudelleen.",expired:"Varmennus vanhentui. Yritä uudelleen.",verificationRequired:"Vahvistus vaaditaan!",footer:'Suojattu <a href="https://altcha.org/" target="_blank" aria-label="Vieraile sivulla Altcha.org">ALTCHA</a>:lla',getAudioChallenge:"Hae äänitehtävä",label:"En ole robotti",loading:"Ladataan...",reload:"Lataa uudelleen",verify:"Vahvista",verified:"Vahvistettu",verifying:"Vahvistetaan...",waitAlert:"Vahvistetaan... odota hetki."};globalThis.altchaI18n.set("fi",b),s.i18n=b,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/fr-ca.d.ts
vendored
Normal file
1
dist_i18n/fr-ca.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/fr-ca';
|
||||
94
dist_i18n/fr-ca.js
Normal file
94
dist_i18n/fr-ca.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const s = () => {
|
||||
};
|
||||
function g(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(e) {
|
||||
var t = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = t;
|
||||
}
|
||||
}
|
||||
function p(e, t, i) {
|
||||
if (e == null)
|
||||
return t(void 0), s;
|
||||
const n = d(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
i
|
||||
)
|
||||
);
|
||||
return n.unsubscribe ? () => n.unsubscribe() : n;
|
||||
}
|
||||
const o = [];
|
||||
function z(e, t = s) {
|
||||
let i = null;
|
||||
const n = /* @__PURE__ */ new Set();
|
||||
function l(a) {
|
||||
if (g(e, a) && (e = a, i)) {
|
||||
const u = !o.length;
|
||||
for (const r of n)
|
||||
r[1](), o.push(r, e);
|
||||
if (u) {
|
||||
for (let r = 0; r < o.length; r += 2)
|
||||
o[r][0](o[r + 1]);
|
||||
o.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function b(a) {
|
||||
l(a(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function h(a, u = s) {
|
||||
const r = [a, u];
|
||||
return n.add(r), n.size === 1 && (i = t(l, b) || s), a(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
n.delete(r), n.size === 0 && i && (i(), i = null);
|
||||
};
|
||||
}
|
||||
return { set: l, update: b, subscribe: h };
|
||||
}
|
||||
function f(e) {
|
||||
let t;
|
||||
return p(e, (i) => t = i)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => f(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(f(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: z({})
|
||||
};
|
||||
const T = {
|
||||
ariaLinkLabel: "Visitez Altcha.org",
|
||||
enterCode: "Entrez le code",
|
||||
enterCodeAria: "Entrez le code que vous entendez. Appuyez sur la barre d'espace pour écouter l'audio.",
|
||||
error: "Échec de la vérification. Réessayez plus tard.",
|
||||
expired: "La vérification a expiré. Réessayez.",
|
||||
verificationRequired: "Vérification requise !",
|
||||
footer: 'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtenir un défi audio",
|
||||
label: "Pas un robot",
|
||||
loading: "Chargement...",
|
||||
reload: "Recharger",
|
||||
verify: "Vérifier",
|
||||
verified: "Vérifié",
|
||||
verifying: "Vérification en cours...",
|
||||
waitAlert: "Vérification en cours... veuillez patienter."
|
||||
};
|
||||
globalThis.altchaI18n.set("fr-ca", T);
|
||||
export {
|
||||
T as i18n
|
||||
};
|
||||
1
dist_i18n/fr-ca.umd.cjs
Normal file
1
dist_i18n/fr-ca.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(a,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(a=typeof globalThis<"u"?globalThis:a||self,o(a["[name]"]={}))})(this,function(a){"use strict";const o=()=>{};function g(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function p(e){var t=u;try{return u=!0,e()}finally{u=t}}function y(e,t,n){if(e==null)return t(void 0),o;const r=p(()=>e.subscribe(t,n));return r.unsubscribe?()=>r.unsubscribe():r}const l=[];function T(e,t=o){let n=null;const r=new Set;function f(s){if(g(e,s)&&(e=s,n)){const b=!l.length;for(const i of r)i[1](),l.push(i,e);if(b){for(let i=0;i<l.length;i+=2)l[i][0](l[i+1]);l.length=0}}}function h(s){f(s(e))}function z(s,b=o){const i=[s,b];return r.add(i),r.size===1&&(n=t(f,h)||o),s(e),()=>{r.delete(i),r.size===0&&n&&(n(),n=null)}}return{set:f,update:h,subscribe:z}}function c(e){let t;return y(e,n=>t=n)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:T({})};const d={ariaLinkLabel:"Visitez Altcha.org",enterCode:"Entrez le code",enterCodeAria:"Entrez le code que vous entendez. Appuyez sur la barre d'espace pour écouter l'audio.",error:"Échec de la vérification. Réessayez plus tard.",expired:"La vérification a expiré. Réessayez.",verificationRequired:"Vérification requise !",footer:'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',getAudioChallenge:"Obtenir un défi audio",label:"Pas un robot",loading:"Chargement...",reload:"Recharger",verify:"Vérifier",verified:"Vérifié",verifying:"Vérification en cours...",waitAlert:"Vérification en cours... veuillez patienter."};globalThis.altchaI18n.set("fr-ca",d),a.i18n=d,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/fr-fr.d.ts
vendored
Normal file
1
dist_i18n/fr-fr.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/fr-fr';
|
||||
94
dist_i18n/fr-fr.js
Normal file
94
dist_i18n/fr-fr.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const s = () => {
|
||||
};
|
||||
function g(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(e) {
|
||||
var t = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = t;
|
||||
}
|
||||
}
|
||||
function p(e, t, r) {
|
||||
if (e == null)
|
||||
return t(void 0), s;
|
||||
const n = d(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return n.unsubscribe ? () => n.unsubscribe() : n;
|
||||
}
|
||||
const a = [];
|
||||
function z(e, t = s) {
|
||||
let r = null;
|
||||
const n = /* @__PURE__ */ new Set();
|
||||
function l(o) {
|
||||
if (g(e, o) && (e = o, r)) {
|
||||
const u = !a.length;
|
||||
for (const i of n)
|
||||
i[1](), a.push(i, e);
|
||||
if (u) {
|
||||
for (let i = 0; i < a.length; i += 2)
|
||||
a[i][0](a[i + 1]);
|
||||
a.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function b(o) {
|
||||
l(o(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function h(o, u = s) {
|
||||
const i = [o, u];
|
||||
return n.add(i), n.size === 1 && (r = t(l, b) || s), o(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
n.delete(i), n.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: l, update: b, subscribe: h };
|
||||
}
|
||||
function f(e) {
|
||||
let t;
|
||||
return p(e, (r) => t = r)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => f(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(f(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: z({})
|
||||
};
|
||||
const T = {
|
||||
ariaLinkLabel: "Visitez Altcha.org",
|
||||
enterCode: "Entrez le code",
|
||||
enterCodeAria: "Entrez le code que vous entendez. Appuyez sur Espace pour écouter l'audio.",
|
||||
error: "Échec de la vérification. Essayez à nouveau plus tard.",
|
||||
expired: "La vérification a expiré. Essayez à nouveau.",
|
||||
verificationRequired: "Vérification requise !",
|
||||
footer: 'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Obtenir un défi audio",
|
||||
label: "Pas un robot",
|
||||
loading: "Chargement...",
|
||||
reload: "Recharger",
|
||||
verify: "Vérifier",
|
||||
verified: "Vérifié",
|
||||
verifying: "Vérification en cours...",
|
||||
waitAlert: "Vérification en cours... veuillez patienter."
|
||||
};
|
||||
globalThis.altchaI18n.set("fr-fr", T);
|
||||
export {
|
||||
T as i18n
|
||||
};
|
||||
1
dist_i18n/fr-fr.umd.cjs
Normal file
1
dist_i18n/fr-fr.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(a,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(a=typeof globalThis<"u"?globalThis:a||self,o(a["[name]"]={}))})(this,function(a){"use strict";const o=()=>{};function g(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let l=!1;function p(e){var t=l;try{return l=!0,e()}finally{l=t}}function y(e,t,n){if(e==null)return t(void 0),o;const r=p(()=>e.subscribe(t,n));return r.unsubscribe?()=>r.unsubscribe():r}const u=[];function T(e,t=o){let n=null;const r=new Set;function f(s){if(g(e,s)&&(e=s,n)){const b=!u.length;for(const i of r)i[1](),u.push(i,e);if(b){for(let i=0;i<u.length;i+=2)u[i][0](u[i+1]);u.length=0}}}function d(s){f(s(e))}function z(s,b=o){const i=[s,b];return r.add(i),r.size===1&&(n=t(f,d)||o),s(e),()=>{r.delete(i),r.size===0&&n&&(n(),n=null)}}return{set:f,update:d,subscribe:z}}function c(e){let t;return y(e,n=>t=n)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:T({})};const h={ariaLinkLabel:"Visitez Altcha.org",enterCode:"Entrez le code",enterCodeAria:"Entrez le code que vous entendez. Appuyez sur Espace pour écouter l'audio.",error:"Échec de la vérification. Essayez à nouveau plus tard.",expired:"La vérification a expiré. Essayez à nouveau.",verificationRequired:"Vérification requise !",footer:'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',getAudioChallenge:"Obtenir un défi audio",label:"Pas un robot",loading:"Chargement...",reload:"Recharger",verify:"Vérifier",verified:"Vérifié",verifying:"Vérification en cours...",waitAlert:"Vérification en cours... veuillez patienter."};globalThis.altchaI18n.set("fr-fr",h),a.i18n=h,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/ga.d.ts
vendored
Normal file
1
dist_i18n/ga.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/ga';
|
||||
94
dist_i18n/ga.js
Normal file
94
dist_i18n/ga.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const s = () => {
|
||||
};
|
||||
function g(t, a) {
|
||||
return t != t ? a == a : t !== a || t !== null && typeof t == "object" || typeof t == "function";
|
||||
}
|
||||
let u = !1;
|
||||
function d(t) {
|
||||
var a = u;
|
||||
try {
|
||||
return u = !0, t();
|
||||
} finally {
|
||||
u = a;
|
||||
}
|
||||
}
|
||||
function T(t, a, i) {
|
||||
if (t == null)
|
||||
return a(void 0), s;
|
||||
const n = d(
|
||||
() => t.subscribe(
|
||||
a,
|
||||
// @ts-expect-error
|
||||
i
|
||||
)
|
||||
);
|
||||
return n.unsubscribe ? () => n.unsubscribe() : n;
|
||||
}
|
||||
const l = [];
|
||||
function p(t, a = s) {
|
||||
let i = null;
|
||||
const n = /* @__PURE__ */ new Set();
|
||||
function o(r) {
|
||||
if (g(t, r) && (t = r, i)) {
|
||||
const c = !l.length;
|
||||
for (const e of n)
|
||||
e[1](), l.push(e, t);
|
||||
if (c) {
|
||||
for (let e = 0; e < l.length; e += 2)
|
||||
l[e][0](l[e + 1]);
|
||||
l.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function b(r) {
|
||||
o(r(
|
||||
/** @type {T} */
|
||||
t
|
||||
));
|
||||
}
|
||||
function f(r, c = s) {
|
||||
const e = [r, c];
|
||||
return n.add(e), n.size === 1 && (i = a(o, b) || s), r(
|
||||
/** @type {T} */
|
||||
t
|
||||
), () => {
|
||||
n.delete(e), n.size === 0 && i && (i(), i = null);
|
||||
};
|
||||
}
|
||||
return { set: o, update: b, subscribe: f };
|
||||
}
|
||||
function h(t) {
|
||||
let a;
|
||||
return T(t, (i) => a = i)(), a;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (t) => h(globalThis.altchaI18n.store)[t],
|
||||
set: (t, a) => {
|
||||
Object.assign(h(globalThis.altchaI18n.store), {
|
||||
[t]: a
|
||||
}), globalThis.altchaI18n.store.set(h(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: p({})
|
||||
};
|
||||
const A = {
|
||||
ariaLinkLabel: "Tabhair cuairt ar Altcha.org",
|
||||
enterCode: "Iontráil cód",
|
||||
enterCodeAria: "Cuir isteach an cód a chloiseann tú. Brúigh Spás chun an fuaime a sheinm.",
|
||||
error: "Theip ar an bhfíorú. Bain triail eile as níos déanaí.",
|
||||
expired: "Tá an fíorú as feidhm. Bain triail eile as.",
|
||||
verificationRequired: "Fíorú riachtanach!",
|
||||
footer: 'Cosanta ag <a href="https://altcha.org/" target="_blank" aria-label="Tabhair cuairt ar Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Faigh dúshlán fuaime",
|
||||
label: "Níl mé i mo róbat",
|
||||
loading: "Á luchtú...",
|
||||
reload: "Athluchtaigh",
|
||||
verify: "Fíoraigh",
|
||||
verified: "Fíoraithe",
|
||||
verifying: "Fíorú ar siúl...",
|
||||
waitAlert: "Fíorú ar siúl... fan go fóill."
|
||||
};
|
||||
globalThis.altchaI18n.set("ga", A);
|
||||
export {
|
||||
A as i18n
|
||||
};
|
||||
1
dist_i18n/ga.umd.cjs
Normal file
1
dist_i18n/ga.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(l,r){typeof exports=="object"&&typeof module<"u"?r(exports):typeof define=="function"&&define.amd?define(["exports"],r):(l=typeof globalThis<"u"?globalThis:l||self,r(l["[name]"]={}))})(this,function(l){"use strict";const r=()=>{};function d(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function p(e){var t=u;try{return u=!0,e()}finally{u=t}}function T(e,t,n){if(e==null)return t(void 0),r;const a=p(()=>e.subscribe(t,n));return a.unsubscribe?()=>a.unsubscribe():a}const s=[];function m(e,t=r){let n=null;const a=new Set;function h(o){if(d(e,o)&&(e=o,n)){const f=!s.length;for(const i of a)i[1](),s.push(i,e);if(f){for(let i=0;i<s.length;i+=2)s[i][0](s[i+1]);s.length=0}}}function g(o){h(o(e))}function y(o,f=r){const i=[o,f];return a.add(i),a.size===1&&(n=t(h,g)||r),o(e),()=>{a.delete(i),a.size===0&&n&&(n(),n=null)}}return{set:h,update:g,subscribe:y}}function c(e){let t;return T(e,n=>t=n)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:m({})};const b={ariaLinkLabel:"Tabhair cuairt ar Altcha.org",enterCode:"Iontráil cód",enterCodeAria:"Cuir isteach an cód a chloiseann tú. Brúigh Spás chun an fuaime a sheinm.",error:"Theip ar an bhfíorú. Bain triail eile as níos déanaí.",expired:"Tá an fíorú as feidhm. Bain triail eile as.",verificationRequired:"Fíorú riachtanach!",footer:'Cosanta ag <a href="https://altcha.org/" target="_blank" aria-label="Tabhair cuairt ar Altcha.org">ALTCHA</a>',getAudioChallenge:"Faigh dúshlán fuaime",label:"Níl mé i mo róbat",loading:"Á luchtú...",reload:"Athluchtaigh",verify:"Fíoraigh",verified:"Fíoraithe",verifying:"Fíorú ar siúl...",waitAlert:"Fíorú ar siúl... fan go fóill."};globalThis.altchaI18n.set("ga",b),l.i18n=b,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/he.d.ts
vendored
Normal file
1
dist_i18n/he.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/he';
|
||||
94
dist_i18n/he.js
Normal file
94
dist_i18n/he.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const o = () => {
|
||||
};
|
||||
function g(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(e) {
|
||||
var t = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = t;
|
||||
}
|
||||
}
|
||||
function p(e, t, r) {
|
||||
if (e == null)
|
||||
return t(void 0), o;
|
||||
const i = d(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return i.unsubscribe ? () => i.unsubscribe() : i;
|
||||
}
|
||||
const s = [];
|
||||
function T(e, t = o) {
|
||||
let r = null;
|
||||
const i = /* @__PURE__ */ new Set();
|
||||
function a(l) {
|
||||
if (g(e, l) && (e = l, r)) {
|
||||
const u = !s.length;
|
||||
for (const n of i)
|
||||
n[1](), s.push(n, e);
|
||||
if (u) {
|
||||
for (let n = 0; n < s.length; n += 2)
|
||||
s[n][0](s[n + 1]);
|
||||
s.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function f(l) {
|
||||
a(l(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function h(l, u = o) {
|
||||
const n = [l, u];
|
||||
return i.add(n), i.size === 1 && (r = t(a, f) || o), l(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
i.delete(n), i.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: a, update: f, subscribe: h };
|
||||
}
|
||||
function b(e) {
|
||||
let t;
|
||||
return p(e, (r) => t = r)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => b(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: T({})
|
||||
};
|
||||
const A = {
|
||||
ariaLinkLabel: "בקר באתר Altcha.org",
|
||||
enterCode: "הזן קוד",
|
||||
enterCodeAria: "הזן את הקוד שאתה שומע. לחץ על רווח להפעלת השמע.",
|
||||
error: "האימות נכשל. נסה שוב מאוחר יותר.",
|
||||
expired: "תוקף האימות פג. נסה שוב.",
|
||||
verificationRequired: "נדרש אימות!",
|
||||
footer: 'מוגן על ידי <a href="https://altcha.org/" target="_blank" aria-label="בקר באתר Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "קבל אתגר שמע",
|
||||
label: "אני לא רובוט",
|
||||
loading: "טוען...",
|
||||
reload: "טען מחדש",
|
||||
verify: "אמת",
|
||||
verified: "אומת",
|
||||
verifying: "מאמת...",
|
||||
waitAlert: "מבצע אימות... אנא המתן."
|
||||
};
|
||||
globalThis.altchaI18n.set("he", A);
|
||||
export {
|
||||
A as i18n
|
||||
};
|
||||
1
dist_i18n/he.umd.cjs
Normal file
1
dist_i18n/he.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(l,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(l=typeof globalThis<"u"?globalThis:l||self,o(l["[name]"]={}))})(this,function(l){"use strict";const o=()=>{};function d(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let a=!1;function p(e){var t=a;try{return a=!0,e()}finally{a=t}}function T(e,t,i){if(e==null)return t(void 0),o;const r=p(()=>e.subscribe(t,i));return r.unsubscribe?()=>r.unsubscribe():r}const u=[];function y(e,t=o){let i=null;const r=new Set;function f(s){if(d(e,s)&&(e=s,i)){const b=!u.length;for(const n of r)n[1](),u.push(n,e);if(b){for(let n=0;n<u.length;n+=2)u[n][0](u[n+1]);u.length=0}}}function g(s){f(s(e))}function A(s,b=o){const n=[s,b];return r.add(n),r.size===1&&(i=t(f,g)||o),s(e),()=>{r.delete(n),r.size===0&&i&&(i(),i=null)}}return{set:f,update:g,subscribe:A}}function c(e){let t;return T(e,i=>t=i)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const h={ariaLinkLabel:"בקר באתר Altcha.org",enterCode:"הזן קוד",enterCodeAria:"הזן את הקוד שאתה שומע. לחץ על רווח להפעלת השמע.",error:"האימות נכשל. נסה שוב מאוחר יותר.",expired:"תוקף האימות פג. נסה שוב.",verificationRequired:"נדרש אימות!",footer:'מוגן על ידי <a href="https://altcha.org/" target="_blank" aria-label="בקר באתר Altcha.org">ALTCHA</a>',getAudioChallenge:"קבל אתגר שמע",label:"אני לא רובוט",loading:"טוען...",reload:"טען מחדש",verify:"אמת",verified:"אומת",verifying:"מאמת...",waitAlert:"מבצע אימות... אנא המתן."};globalThis.altchaI18n.set("he",h),l.i18n=h,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/hi.d.ts
vendored
Normal file
1
dist_i18n/hi.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/hi';
|
||||
94
dist_i18n/hi.js
Normal file
94
dist_i18n/hi.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const o = () => {
|
||||
};
|
||||
function g(t, e) {
|
||||
return t != t ? e == e : t !== e || t !== null && typeof t == "object" || typeof t == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(t) {
|
||||
var e = c;
|
||||
try {
|
||||
return c = !0, t();
|
||||
} finally {
|
||||
c = e;
|
||||
}
|
||||
}
|
||||
function p(t, e, r) {
|
||||
if (t == null)
|
||||
return e(void 0), o;
|
||||
const i = d(
|
||||
() => t.subscribe(
|
||||
e,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return i.unsubscribe ? () => i.unsubscribe() : i;
|
||||
}
|
||||
const s = [];
|
||||
function T(t, e = o) {
|
||||
let r = null;
|
||||
const i = /* @__PURE__ */ new Set();
|
||||
function a(l) {
|
||||
if (g(t, l) && (t = l, r)) {
|
||||
const u = !s.length;
|
||||
for (const n of i)
|
||||
n[1](), s.push(n, t);
|
||||
if (u) {
|
||||
for (let n = 0; n < s.length; n += 2)
|
||||
s[n][0](s[n + 1]);
|
||||
s.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function f(l) {
|
||||
a(l(
|
||||
/** @type {T} */
|
||||
t
|
||||
));
|
||||
}
|
||||
function h(l, u = o) {
|
||||
const n = [l, u];
|
||||
return i.add(n), i.size === 1 && (r = e(a, f) || o), l(
|
||||
/** @type {T} */
|
||||
t
|
||||
), () => {
|
||||
i.delete(n), i.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: a, update: f, subscribe: h };
|
||||
}
|
||||
function b(t) {
|
||||
let e;
|
||||
return p(t, (r) => e = r)(), e;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (t) => b(globalThis.altchaI18n.store)[t],
|
||||
set: (t, e) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[t]: e
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: T({})
|
||||
};
|
||||
const A = {
|
||||
ariaLinkLabel: "Altcha.org पर जाएं",
|
||||
enterCode: "कोड दर्ज करेंं",
|
||||
enterCodeAria: "आप जो कोड सुनते हैं उसे दर्ज करें। ऑडियो चलाने के लिए स्पेस दबाएं।",
|
||||
error: "सत्यापन विफल। कृपया बाद में फिर से प्रयास करें।",
|
||||
expired: "सत्यापन समाप्त हो गया है। कृपया पुनः प्रयास करें।",
|
||||
verificationRequired: "सत्यापन आवश्यक है!",
|
||||
footer: 'द्वारा संरक्षित <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org पर जाएं">ALTCHA</a>',
|
||||
getAudioChallenge: "ऑडियो चुनौती प्राप्त करें",
|
||||
label: "मैं रोबोट नहीं हूँ",
|
||||
loading: "लोड हो रहा है...",
|
||||
reload: "पुनः लोड करें",
|
||||
verify: "सत्यापित करें",
|
||||
verified: "सत्यापित",
|
||||
verifying: "सत्यापित कर रहे हैं...",
|
||||
waitAlert: "सत्यापित किया जा रहा है... कृपया प्रतीक्षा करें।"
|
||||
};
|
||||
globalThis.altchaI18n.set("hi", A);
|
||||
export {
|
||||
A as i18n
|
||||
};
|
||||
1
dist_i18n/hi.umd.cjs
Normal file
1
dist_i18n/hi.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(l,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(l=typeof globalThis<"u"?globalThis:l||self,o(l["[name]"]={}))})(this,function(l){"use strict";const o=()=>{};function d(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let a=!1;function p(e){var t=a;try{return a=!0,e()}finally{a=t}}function T(e,t,i){if(e==null)return t(void 0),o;const r=p(()=>e.subscribe(t,i));return r.unsubscribe?()=>r.unsubscribe():r}const u=[];function y(e,t=o){let i=null;const r=new Set;function f(s){if(d(e,s)&&(e=s,i)){const b=!u.length;for(const n of r)n[1](),u.push(n,e);if(b){for(let n=0;n<u.length;n+=2)u[n][0](u[n+1]);u.length=0}}}function g(s){f(s(e))}function A(s,b=o){const n=[s,b];return r.add(n),r.size===1&&(i=t(f,g)||o),s(e),()=>{r.delete(n),r.size===0&&i&&(i(),i=null)}}return{set:f,update:g,subscribe:A}}function c(e){let t;return T(e,i=>t=i)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const h={ariaLinkLabel:"Altcha.org पर जाएं",enterCode:"कोड दर्ज करेंं",enterCodeAria:"आप जो कोड सुनते हैं उसे दर्ज करें। ऑडियो चलाने के लिए स्पेस दबाएं।",error:"सत्यापन विफल। कृपया बाद में फिर से प्रयास करें।",expired:"सत्यापन समाप्त हो गया है। कृपया पुनः प्रयास करें।",verificationRequired:"सत्यापन आवश्यक है!",footer:'द्वारा संरक्षित <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org पर जाएं">ALTCHA</a>',getAudioChallenge:"ऑडियो चुनौती प्राप्त करें",label:"मैं रोबोट नहीं हूँ",loading:"लोड हो रहा है...",reload:"पुनः लोड करें",verify:"सत्यापित करें",verified:"सत्यापित",verifying:"सत्यापित कर रहे हैं...",waitAlert:"सत्यापित किया जा रहा है... कृपया प्रतीक्षा करें।"};globalThis.altchaI18n.set("hi",h),l.i18n=h,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/hr.d.ts
vendored
Normal file
1
dist_i18n/hr.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/hr';
|
||||
94
dist_i18n/hr.js
Normal file
94
dist_i18n/hr.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const s = () => {
|
||||
};
|
||||
function j(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function g(e) {
|
||||
var t = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = t;
|
||||
}
|
||||
}
|
||||
function d(e, t, r) {
|
||||
if (e == null)
|
||||
return t(void 0), s;
|
||||
const n = g(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return n.unsubscribe ? () => n.unsubscribe() : n;
|
||||
}
|
||||
const a = [];
|
||||
function p(e, t = s) {
|
||||
let r = null;
|
||||
const n = /* @__PURE__ */ new Set();
|
||||
function l(i) {
|
||||
if (j(e, i) && (e = i, r)) {
|
||||
const u = !a.length;
|
||||
for (const o of n)
|
||||
o[1](), a.push(o, e);
|
||||
if (u) {
|
||||
for (let o = 0; o < a.length; o += 2)
|
||||
a[o][0](a[o + 1]);
|
||||
a.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function f(i) {
|
||||
l(i(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function h(i, u = s) {
|
||||
const o = [i, u];
|
||||
return n.add(o), n.size === 1 && (r = t(l, f) || s), i(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
n.delete(o), n.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: l, update: f, subscribe: h };
|
||||
}
|
||||
function b(e) {
|
||||
let t;
|
||||
return d(e, (r) => t = r)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => b(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: p({})
|
||||
};
|
||||
const k = {
|
||||
ariaLinkLabel: "Posjetite Altcha.org",
|
||||
enterCode: "Unesite kod",
|
||||
enterCodeAria: "Unesite kod koji čujete. Pritisnite razmaknicu za reprodukciju zvuka.",
|
||||
error: "Provjera nije uspjela. Molimo pokušajte kasnije.",
|
||||
expired: "Provjera je istekla. Molimo pokušajte ponovo.",
|
||||
verificationRequired: "Potrebna je provjera!",
|
||||
footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posjetite Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Audio provjera",
|
||||
label: "Ja nisam robot",
|
||||
loading: "Učitavanje...",
|
||||
reload: "Ponovno učitaj",
|
||||
verify: "Provjeri",
|
||||
verified: "Provjereno",
|
||||
verifying: "Provjeravanje...",
|
||||
waitAlert: "Provjera je u tijeku... molimo pričekajte."
|
||||
};
|
||||
globalThis.altchaI18n.set("hr", k);
|
||||
export {
|
||||
k as i18n
|
||||
};
|
||||
1
dist_i18n/hr.umd.cjs
Normal file
1
dist_i18n/hr.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(s,r){typeof exports=="object"&&typeof module<"u"?r(exports):typeof define=="function"&&define.amd?define(["exports"],r):(s=typeof globalThis<"u"?globalThis:s||self,r(s["[name]"]={}))})(this,function(s){"use strict";const r=()=>{};function j(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function g(e){var t=u;try{return u=!0,e()}finally{u=t}}function p(e,t,o){if(e==null)return t(void 0),r;const i=g(()=>e.subscribe(t,o));return i.unsubscribe?()=>i.unsubscribe():i}const l=[];function k(e,t=r){let o=null;const i=new Set;function f(a){if(j(e,a)&&(e=a,o)){const b=!l.length;for(const n of i)n[1](),l.push(n,e);if(b){for(let n=0;n<l.length;n+=2)l[n][0](l[n+1]);l.length=0}}}function d(a){f(a(e))}function v(a,b=r){const n=[a,b];return i.add(n),i.size===1&&(o=t(f,d)||r),a(e),()=>{i.delete(n),i.size===0&&o&&(o(),o=null)}}return{set:f,update:d,subscribe:v}}function c(e){let t;return p(e,o=>t=o)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:k({})};const h={ariaLinkLabel:"Posjetite Altcha.org",enterCode:"Unesite kod",enterCodeAria:"Unesite kod koji čujete. Pritisnite razmaknicu za reprodukciju zvuka.",error:"Provjera nije uspjela. Molimo pokušajte kasnije.",expired:"Provjera je istekla. Molimo pokušajte ponovo.",verificationRequired:"Potrebna je provjera!",footer:'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posjetite Altcha.org">ALTCHA</a>',getAudioChallenge:"Audio provjera",label:"Ja nisam robot",loading:"Učitavanje...",reload:"Ponovno učitaj",verify:"Provjeri",verified:"Provjereno",verifying:"Provjeravanje...",waitAlert:"Provjera je u tijeku... molimo pričekajte."};globalThis.altchaI18n.set("hr",h),s.i18n=h,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/hu.d.ts
vendored
Normal file
1
dist_i18n/hu.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/hu';
|
||||
94
dist_i18n/hu.js
Normal file
94
dist_i18n/hu.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const o = () => {
|
||||
};
|
||||
function f(e, t) {
|
||||
return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(e) {
|
||||
var t = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = t;
|
||||
}
|
||||
}
|
||||
function k(e, t, r) {
|
||||
if (e == null)
|
||||
return t(void 0), o;
|
||||
const a = d(
|
||||
() => e.subscribe(
|
||||
t,
|
||||
// @ts-expect-error
|
||||
r
|
||||
)
|
||||
);
|
||||
return a.unsubscribe ? () => a.unsubscribe() : a;
|
||||
}
|
||||
const s = [];
|
||||
function z(e, t = o) {
|
||||
let r = null;
|
||||
const a = /* @__PURE__ */ new Set();
|
||||
function i(n) {
|
||||
if (f(e, n) && (e = n, r)) {
|
||||
const u = !s.length;
|
||||
for (const l of a)
|
||||
l[1](), s.push(l, e);
|
||||
if (u) {
|
||||
for (let l = 0; l < s.length; l += 2)
|
||||
s[l][0](s[l + 1]);
|
||||
s.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function g(n) {
|
||||
i(n(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function h(n, u = o) {
|
||||
const l = [n, u];
|
||||
return a.add(l), a.size === 1 && (r = t(i, g) || o), n(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
a.delete(l), a.size === 0 && r && (r(), r = null);
|
||||
};
|
||||
}
|
||||
return { set: i, update: g, subscribe: h };
|
||||
}
|
||||
function b(e) {
|
||||
let t;
|
||||
return k(e, (r) => t = r)(), t;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => b(globalThis.altchaI18n.store)[e],
|
||||
set: (e, t) => {
|
||||
Object.assign(b(globalThis.altchaI18n.store), {
|
||||
[e]: t
|
||||
}), globalThis.altchaI18n.store.set(b(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: z({})
|
||||
};
|
||||
const j = {
|
||||
ariaLinkLabel: "Látogass el az Altcha.org oldalra",
|
||||
enterCode: "Írja be a kódot",
|
||||
enterCodeAria: "Írja be a hallott kódot. Nyomja meg a Szóköz billentyűt a hang lejátszásához.",
|
||||
error: "A hitelesítés nem sikerült. Próbáld meg később újra.",
|
||||
expired: "A hitelesítés lejárt. Próbáld újra.",
|
||||
verificationRequired: "Ellenőrzés szükséges!",
|
||||
footer: 'Védve a következő által: <a href="https://altcha.org/" target="_blank" aria-label="Látogass el az Altcha.org oldalra">ALTCHA</a>',
|
||||
getAudioChallenge: "Hangalapú kihívás kérése",
|
||||
label: "Nem vagyok robot",
|
||||
loading: "Betöltés...",
|
||||
reload: "Újratöltés",
|
||||
verify: "Ellenőrzés",
|
||||
verified: "Ellenőrizve",
|
||||
verifying: "Ellenőrzés folyamatban...",
|
||||
waitAlert: "Ellenőrzés folyamatban... kérlek várj."
|
||||
};
|
||||
globalThis.altchaI18n.set("hu", j);
|
||||
export {
|
||||
j as i18n
|
||||
};
|
||||
1
dist_i18n/hu.umd.cjs
Normal file
1
dist_i18n/hu.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(i,s){typeof exports=="object"&&typeof module<"u"?s(exports):typeof define=="function"&&define.amd?define(["exports"],s):(i=typeof globalThis<"u"?globalThis:i||self,s(i["[name]"]={}))})(this,function(i){"use strict";const s=()=>{};function d(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}let u=!1;function k(e){var t=u;try{return u=!0,e()}finally{u=t}}function p(e,t,n){if(e==null)return t(void 0),s;const r=k(()=>e.subscribe(t,n));return r.unsubscribe?()=>r.unsubscribe():r}const o=[];function y(e,t=s){let n=null;const r=new Set;function b(a){if(d(e,a)&&(e=a,n)){const f=!o.length;for(const l of r)l[1](),o.push(l,e);if(f){for(let l=0;l<o.length;l+=2)o[l][0](o[l+1]);o.length=0}}}function g(a){b(a(e))}function z(a,f=s){const l=[a,f];return r.add(l),r.size===1&&(n=t(b,g)||s),a(e),()=>{r.delete(l),r.size===0&&n&&(n(),n=null)}}return{set:b,update:g,subscribe:z}}function c(e){let t;return p(e,n=>t=n)(),t}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>c(globalThis.altchaI18n.store)[e],set:(e,t)=>{Object.assign(c(globalThis.altchaI18n.store),{[e]:t}),globalThis.altchaI18n.store.set(c(globalThis.altchaI18n.store))},store:y({})};const h={ariaLinkLabel:"Látogass el az Altcha.org oldalra",enterCode:"Írja be a kódot",enterCodeAria:"Írja be a hallott kódot. Nyomja meg a Szóköz billentyűt a hang lejátszásához.",error:"A hitelesítés nem sikerült. Próbáld meg később újra.",expired:"A hitelesítés lejárt. Próbáld újra.",verificationRequired:"Ellenőrzés szükséges!",footer:'Védve a következő által: <a href="https://altcha.org/" target="_blank" aria-label="Látogass el az Altcha.org oldalra">ALTCHA</a>',getAudioChallenge:"Hangalapú kihívás kérése",label:"Nem vagyok robot",loading:"Betöltés...",reload:"Újratöltés",verify:"Ellenőrzés",verified:"Ellenőrizve",verifying:"Ellenőrzés folyamatban...",waitAlert:"Ellenőrzés folyamatban... kérlek várj."};globalThis.altchaI18n.set("hu",h),i.i18n=h,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/id.d.ts
vendored
Normal file
1
dist_i18n/id.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/id';
|
||||
94
dist_i18n/id.js
Normal file
94
dist_i18n/id.js
Normal file
@@ -0,0 +1,94 @@
|
||||
const s = () => {
|
||||
};
|
||||
function h(e, i) {
|
||||
return e != e ? i == i : e !== i || e !== null && typeof e == "object" || typeof e == "function";
|
||||
}
|
||||
let c = !1;
|
||||
function d(e) {
|
||||
var i = c;
|
||||
try {
|
||||
return c = !0, e();
|
||||
} finally {
|
||||
c = i;
|
||||
}
|
||||
}
|
||||
function k(e, i, n) {
|
||||
if (e == null)
|
||||
return i(void 0), s;
|
||||
const t = d(
|
||||
() => e.subscribe(
|
||||
i,
|
||||
// @ts-expect-error
|
||||
n
|
||||
)
|
||||
);
|
||||
return t.unsubscribe ? () => t.unsubscribe() : t;
|
||||
}
|
||||
const l = [];
|
||||
function p(e, i = s) {
|
||||
let n = null;
|
||||
const t = /* @__PURE__ */ new Set();
|
||||
function u(r) {
|
||||
if (h(e, r) && (e = r, n)) {
|
||||
const o = !l.length;
|
||||
for (const a of t)
|
||||
a[1](), l.push(a, e);
|
||||
if (o) {
|
||||
for (let a = 0; a < l.length; a += 2)
|
||||
l[a][0](l[a + 1]);
|
||||
l.length = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
function b(r) {
|
||||
u(r(
|
||||
/** @type {T} */
|
||||
e
|
||||
));
|
||||
}
|
||||
function f(r, o = s) {
|
||||
const a = [r, o];
|
||||
return t.add(a), t.size === 1 && (n = i(u, b) || s), r(
|
||||
/** @type {T} */
|
||||
e
|
||||
), () => {
|
||||
t.delete(a), t.size === 0 && n && (n(), n = null);
|
||||
};
|
||||
}
|
||||
return { set: u, update: b, subscribe: f };
|
||||
}
|
||||
function g(e) {
|
||||
let i;
|
||||
return k(e, (n) => i = n)(), i;
|
||||
}
|
||||
globalThis.altchaPlugins = globalThis.altchaPlugins || [];
|
||||
globalThis.altchaI18n = globalThis.altchaI18n || {
|
||||
get: (e) => g(globalThis.altchaI18n.store)[e],
|
||||
set: (e, i) => {
|
||||
Object.assign(g(globalThis.altchaI18n.store), {
|
||||
[e]: i
|
||||
}), globalThis.altchaI18n.store.set(g(globalThis.altchaI18n.store));
|
||||
},
|
||||
store: p({})
|
||||
};
|
||||
const T = {
|
||||
ariaLinkLabel: "Kunjungi Altcha.org",
|
||||
enterCode: "Masukkan kode",
|
||||
enterCodeAria: "Masukkan kode yang Anda dengar. Tekan Spasi untuk memutar audio.",
|
||||
error: "Verifikasi gagal. Coba lagi nanti.",
|
||||
expired: "Verifikasi telah kedaluwarsa. Coba lagi.",
|
||||
verificationRequired: "Verifikasi diperlukan!",
|
||||
footer: 'Dilindungi oleh <a href="https://altcha.org/" target="_blank" aria-label="Kunjungi Altcha.org">ALTCHA</a>',
|
||||
getAudioChallenge: "Dapatkan tantangan audio",
|
||||
label: "Saya bukan robot",
|
||||
loading: "Memuat...",
|
||||
reload: "Muat ulang",
|
||||
verify: "Verifikasi",
|
||||
verified: "Terverifikasi",
|
||||
verifying: "Memverifikasi...",
|
||||
waitAlert: "Memverifikasi... harap tunggu."
|
||||
};
|
||||
globalThis.altchaI18n.set("id", T);
|
||||
export {
|
||||
T as i18n
|
||||
};
|
||||
1
dist_i18n/id.umd.cjs
Normal file
1
dist_i18n/id.umd.cjs
Normal file
@@ -0,0 +1 @@
|
||||
(function(s,r){typeof exports=="object"&&typeof module<"u"?r(exports):typeof define=="function"&&define.amd?define(["exports"],r):(s=typeof globalThis<"u"?globalThis:s||self,r(s["[name]"]={}))})(this,function(s){"use strict";const r=()=>{};function h(e,i){return e!=e?i==i:e!==i||e!==null&&typeof e=="object"||typeof e=="function"}let l=!1;function k(e){var i=l;try{return l=!0,e()}finally{l=i}}function p(e,i,t){if(e==null)return i(void 0),r;const a=k(()=>e.subscribe(i,t));return a.unsubscribe?()=>a.unsubscribe():a}const u=[];function T(e,i=r){let t=null;const a=new Set;function c(o){if(h(e,o)&&(e=o,t)){const g=!u.length;for(const n of a)n[1](),u.push(n,e);if(g){for(let n=0;n<u.length;n+=2)u[n][0](u[n+1]);u.length=0}}}function d(o){c(o(e))}function y(o,g=r){const n=[o,g];return a.add(n),a.size===1&&(t=i(c,d)||r),o(e),()=>{a.delete(n),a.size===0&&t&&(t(),t=null)}}return{set:c,update:d,subscribe:y}}function f(e){let i;return p(e,t=>i=t)(),i}globalThis.altchaPlugins=globalThis.altchaPlugins||[],globalThis.altchaI18n=globalThis.altchaI18n||{get:e=>f(globalThis.altchaI18n.store)[e],set:(e,i)=>{Object.assign(f(globalThis.altchaI18n.store),{[e]:i}),globalThis.altchaI18n.store.set(f(globalThis.altchaI18n.store))},store:T({})};const b={ariaLinkLabel:"Kunjungi Altcha.org",enterCode:"Masukkan kode",enterCodeAria:"Masukkan kode yang Anda dengar. Tekan Spasi untuk memutar audio.",error:"Verifikasi gagal. Coba lagi nanti.",expired:"Verifikasi telah kedaluwarsa. Coba lagi.",verificationRequired:"Verifikasi diperlukan!",footer:'Dilindungi oleh <a href="https://altcha.org/" target="_blank" aria-label="Kunjungi Altcha.org">ALTCHA</a>',getAudioChallenge:"Dapatkan tantangan audio",label:"Saya bukan robot",loading:"Memuat...",reload:"Muat ulang",verify:"Verifikasi",verified:"Terverifikasi",verifying:"Memverifikasi...",waitAlert:"Memverifikasi... harap tunggu."};globalThis.altchaI18n.set("id",b),s.i18n=b,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})});
|
||||
1
dist_i18n/is.d.ts
vendored
Normal file
1
dist_i18n/is.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
declare module 'altcha/i18n/is';
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user