diff --git a/.github/workflows/pr_ci_i18n.yaml b/.github/workflows/pr_ci_i18n.yaml
index 1649d8407..dd863ea56 100644
--- a/.github/workflows/pr_ci_i18n.yaml
+++ b/.github/workflows/pr_ci_i18n.yaml
@@ -25,11 +25,21 @@ jobs:
with:
python-version: "3.11"
- - name: Execute i18n Values Check
+ - name: Execute i18n Key Identifiers Check
working-directory: ./frontend/i18n/check
- run: python i18n_check_values.py
+ run: python i18n_check_key_identifiers.py
- - name: Execute i18n Keys Check
+ - name: Execute i18n Unused Keys Check
if: always()
working-directory: ./frontend/i18n/check
- run: python i18n_check_keys.py
+ run: python i18n_check_unused_keys.py
+
+ - name: Execute i18n Non Source Keys Check
+ if: always()
+ working-directory: ./frontend/i18n/check
+ run: python i18n_check_non_source_keys.py
+
+ - name: Execute i18n Repeat Values Check
+ if: always()
+ working-directory: ./frontend/i18n/check
+ run: python i18n_check_repeat_values.py
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index f45cb9eb5..7acc8ddd3 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -6,6 +6,7 @@ repos:
- id: end-of-file-fixer
- id: check-yaml
- id: check-added-large-files
+ # - id: pretty-format-json
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.3.0
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 2d67d095e..fd1fc0f20 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,3 +1,4 @@
{
- "eslint.validate": ["javascript", "typescript", "vue"]
+ "eslint.validate": ["javascript", "typescript", "vue"],
+ "typescript.tsdk": "./frontend/node_modules/typescript/lib"
}
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 45a702c9d..7c977ce57 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -17,6 +17,7 @@ If you have questions or would like to communicate with the team, please [join u
- [Learning the tech stack](#learning-the-tech)
- [Development environment](#dev-env)
- [Style guide](#style-guide)
+- [Testing](#testing)
- [Linting](#linting)
- [Issues and projects](#issues-projects)
- [Bug reports](#bug-reports)
@@ -303,6 +304,35 @@ From there you'll be able to visit http://localhost:6006/ to view the documentat
Please see the [activist style guide](https://github.com/activist-org/activist/blob/main/STYLEGUIDE.md) for details about how to follow the code style for the project. We made these guidelines to assure that we as a community write clean, cohesive code that's easy to write and review. Suggestions for the style guide are welcome.
+
+
+## Testing [`⇧`](#contents)
+
+### Backend
+
+Please run the following commands from the project root to test the backend:
+
+```bash
+# Start the Docker container:
+docker compose --env-file .env.dev up backend --build -d # -d to hide logs
+
+# Enter the backend container:
+docker exec -it django_backend sh
+
+# Run backend tests:
+pytest
+
+# Once tests are finished:
+exit
+```
+
+### Frontend
+
+Running frontend tests locally is currently WIP.
+
+> [!NOTE]
+> When working on the frontend, activist recommends manual typechecking. From within the `frontend` directory run `yarn run postinstall` followed by `yarn nuxi typecheck` to confirm your changes are type-safe. Existing TS errors may be ignored. PRs to fix these are always welcome!
+
## Linting [`⇧`](#contents)
@@ -405,9 +435,6 @@ When making a contribution, adhering to the [GitHub flow](https://docs.github.co
git pull --rebase upstream
```
-> [!NOTE]
-> When working on the frontend, activist recommends manual typechecking. From within the `frontend` directory run `yarn run postinstall` followed by `yarn nuxi typecheck` to confirm your changes are type-safe. Existing TS errors may be ignored. PRs to fix these are always welcome!
-
6. Push your topic branch up to your fork:
```bash
diff --git a/README.md b/README.md
index 60c948dfa..d28c5c081 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@
[![nuxt](https://img.shields.io/badge/Nuxt%203-41b883.svg?logo=nuxt.js&logoColor=ffffff)](#tech-stack)
[![vue](https://img.shields.io/badge/Vue%203-41b883.svg?logo=vue.js&logoColor=ffffff)](#tech-stack)
[![tailwind](https://img.shields.io/badge/Tailwind%203-38BDF8.svg?logo=tailwindcss&logoColor=ffffff)](#tech-stack)
-[![license](https://img.shields.io/github/license/activist-org/activist-iOS.svg?label=%20)](https://github.com/activist-org/activist/blob/main/LICENSE.txt)
+[![license](https://img.shields.io/github/license/activist-org/activist.svg?label=%20)](https://github.com/activist-org/activist/blob/main/LICENSE.txt)
[![coc](https://img.shields.io/badge/Contributor%20Covenant-ff69b4.svg)](https://github.com/activist-org/activist/blob/main/.github/CODE_OF_CONDUCT.md)
[![instagram](https://img.shields.io/badge/Instagram-8134AF.svg?logo=instagram&logoColor=ffffff)](https://instagram.com/activist_org)
[![weblate](https://img.shields.io/badge/Weblate-144D3F.svg?logo=weblate&logoColor=ffffff)](https://hosted.weblate.org/projects/activist/activist)
@@ -203,7 +203,7 @@ git remote add upstream https://github.com/activist-org/activist.git
```bash
docker compose --env-file .env.dev up
- # Or with new dependencies:
+ # Or with new dependencies or backend model changes:
# docker compose --env-file .env.dev up --build
# And to stop the containers when you're done working:
diff --git a/STYLEGUIDE.md b/STYLEGUIDE.md
index 646533952..1e181607f 100644
--- a/STYLEGUIDE.md
+++ b/STYLEGUIDE.md
@@ -54,6 +54,9 @@ Vue files (`.vue`) are Single-File Components that have ``, `
diff --git a/frontend/components/EmptyState.vue b/frontend/components/EmptyState.vue
index 153d536ce..f975a8e53 100644
--- a/frontend/components/EmptyState.vue
+++ b/frontend/components/EmptyState.vue
@@ -4,56 +4,56 @@
>
{{
- $t("components.empty-state.organizations-header")
+ $t("components.empty_state.organizations_header")
}}
{{
- $t("components.empty-state.groups-header")
+ $t("components.empty_state.groups_header")
}}
{{
- $t("components.empty-state.events-header")
+ $t("components.empty_state.events_header")
}}
{{
- $t("components.empty-state.resources-header")
+ $t("components.empty_state.resources_header")
}}
{{
- $t("components.empty-state.faq-header")
+ $t("components.empty_state.faq_header")
}}
{{
- $t("components.empty-state.team-header")
+ $t("components.empty_state.team_header")
}}
{{
- $t("components.empty-state.affiliates-header")
+ $t("components.empty_state.affiliates_header")
}}
{{
- $t("components.empty-state.tasks-header")
+ $t("components.empty_state.tasks_header")
}}
{{
- $t("components.empty-state.discussions-header")
+ $t("components.empty_state.discussions_header")
}}
{{
- $t("components.empty-state.message-no-permission")
+ $t("components.empty_state.message_no_permission")
}}
{{
- $t("components.empty-state.message-with-permission")
+ $t("components.empty_state.message_with_permission")
}}
diff --git a/frontend/components/FriendlyCaptcha.vue b/frontend/components/FriendlyCaptcha.vue
index edd6d6c11..1130246b8 100644
--- a/frontend/components/FriendlyCaptcha.vue
+++ b/frontend/components/FriendlyCaptcha.vue
@@ -20,12 +20,12 @@
class="style-btn flex w-full cursor-not-allowed items-center space-x-4 rounded-md border-none p-1 px-3 text-lg shadow-none"
:disabled="true"
:aria-label="
- $t('components.friendly-captcha.captcha-disabled-aria-label')
+ $t('components.friendly_captcha.captcha_disabled_aria_label')
"
>
- {{ $t("components.friendly-captcha.captcha-disabled") }}
+ {{ $t("components.friendly_captcha.captcha_disabled") }}
diff --git a/frontend/components/Loading.vue b/frontend/components/Loading.vue
index 7aa4b0c5b..242a46160 100644
--- a/frontend/components/Loading.vue
+++ b/frontend/components/Loading.vue
@@ -10,13 +10,13 @@
v-if="$colorMode.value == 'light'"
class="h-40"
:src="ACTIVIST_ICON_LIGHT_URL"
- :alt="$t('_global.activist-icon-img-alt-text')"
+ :alt="$t('_global.activist_icon_img_alt_text')"
/>
-->
diff --git a/frontend/components/SearchBar.vue b/frontend/components/SearchBar.vue
index 75b8992b1..6cf69aff2 100644
--- a/frontend/components/SearchBar.vue
+++ b/frontend/components/SearchBar.vue
@@ -40,7 +40,7 @@
>
/
@@ -50,7 +50,7 @@
>
⌘k
@@ -60,7 +60,7 @@
>
⌃k
diff --git a/frontend/components/btn/BtnRoadMap.vue b/frontend/components/btn/BtnRoadMap.vue
index c2987afcb..154ef1c17 100644
--- a/frontend/components/btn/BtnRoadMap.vue
+++ b/frontend/components/btn/BtnRoadMap.vue
@@ -3,7 +3,7 @@
id="btn-roadmap"
class="style-btn select-none items-center rounded-md px-3 py-[0.35rem] text-base font-semibold"
:to="localePath('/about/roadmap')"
- :aria-label="$t('components.btn-roadmap.aria-label')"
+ :aria-label="$t('components.btn_road_map.aria_label')"
>
{{ $t("_global.roadmap") }}
diff --git a/frontend/components/card/CardConnect.vue b/frontend/components/card/CardConnect.vue
index eb4308fe6..8ca5d2bc6 100644
--- a/frontend/components/card/CardConnect.vue
+++ b/frontend/components/card/CardConnect.vue
@@ -65,11 +65,11 @@
diff --git a/frontend/components/card/CardDangerZone.vue b/frontend/components/card/CardDangerZone.vue
index 9f1d8f840..ccc67de9f 100644
--- a/frontend/components/card/CardDangerZone.vue
+++ b/frontend/components/card/CardDangerZone.vue
@@ -4,7 +4,7 @@
>
- {{ $t("components.card-danger-zone.header") }}
+ {{ $t("components.card_danger_zone.header") }}
{{ description }}
diff --git a/frontend/components/card/about/CardAboutGroup.vue b/frontend/components/card/about/CardAboutGroup.vue
index 83c702444..5cb356e88 100644
--- a/frontend/components/card/about/CardAboutGroup.vue
+++ b/frontend/components/card/about/CardAboutGroup.vue
@@ -34,7 +34,7 @@
@@ -54,9 +54,11 @@
expand_reduce_text();
"
class="focus-brand mt-1 font-semibold text-light-link-text dark:text-dark-link-text"
- :aria-label="$t('components.card-about.full-text-aria-label')"
+ :aria-label="
+ $t('components.card.about._global.full_text_aria_label')
+ "
>
- {{ $t("components.card-about.full-text") }}
+ {{ $t("components.card.about._global.full_text") }}
- {{ $t("components.card-about.reduce-text") }}
+ {{ $t("components.card.about._global.reduce_text") }}
diff --git a/frontend/components/card/about/CardAboutOrganization.vue b/frontend/components/card/about/CardAboutOrganization.vue
index 599d203cb..998a2cfdb 100644
--- a/frontend/components/card/about/CardAboutOrganization.vue
+++ b/frontend/components/card/about/CardAboutOrganization.vue
@@ -27,7 +27,6 @@
:description="organization.description"
:getInvolved="organization.getInvolved"
:getInvolvedURL="organization.getInvolvedURL"
- :isOpen="modalIsOpen"
/>
@@ -39,7 +38,7 @@
@@ -59,9 +58,11 @@
expand_reduce_text();
"
class="focus-brand mt-1 font-semibold text-light-link-text dark:text-dark-link-text"
- :aria-label="$t('components.card-about.full-text-aria-label')"
+ :aria-label="
+ $t('components.card.about._global.full_text_aria_label')
+ "
>
- {{ $t("components.card-about.full-text") }}
+ {{ $t("components.card.about._global.full_text") }}
- {{ $t("components.card-about.reduce-text") }}
+ {{ $t("components.card.about._global.reduce_text") }}
diff --git a/frontend/components/card/change-account-info/CardChangeAccountInfoEmail.vue b/frontend/components/card/change-account-info/CardChangeAccountInfoEmail.vue
index ac214c754..e8449ccee 100644
--- a/frontend/components/card/change-account-info/CardChangeAccountInfoEmail.vue
+++ b/frontend/components/card/change-account-info/CardChangeAccountInfoEmail.vue
@@ -1,21 +1,21 @@
- {{ $t("components.card-change-account-info.email.header-cta") }}
+ {{ $t("components.card_change_account_info_email.header_cta") }}
{{
- $t("components.card-change-account-info.email.old-email")
+ $t("components.card_change_account_info_email.old_email")
}}
*
@@ -23,14 +23,14 @@
id="old-email"
class="peer rounded-sm border border-light-text bg-transparent px-3 py-1 dark:border-dark-text"
:placeholder="
- $t('components.card-change-account-info.email.enter-old-email')
+ $t('components.card_change_account_info_email.enter_old_email')
"
/>
{{
- $t("components.card-change-account-info.email.new-email")
+ $t("components.card_change_account_info_email.new_email")
}}
*
@@ -38,18 +38,18 @@
id="new-email"
class="peer rounded-sm border border-light-text bg-transparent px-3 py-1 dark:border-dark-text"
:placeholder="
- $t('components.card-change-account-info.email.enter-new-email')
+ $t('components.card_change_account_info_email.enter_new_email')
"
/>
{{ $t("components._global.enter-password") }} * {{ $t("_global.enter_password") }} *
diff --git a/frontend/components/card/change-account-info/CardChangeAccountInfoPassword.vue b/frontend/components/card/change-account-info/CardChangeAccountInfoPassword.vue
index 13b6bf5cf..d5a311253 100644
--- a/frontend/components/card/change-account-info/CardChangeAccountInfoPassword.vue
+++ b/frontend/components/card/change-account-info/CardChangeAccountInfoPassword.vue
@@ -1,14 +1,14 @@
- {{ $t("components.card-change-account-info.password.header-cta") }}
+ {{ $t("components.card_change_account_info_password.header_cta") }}
@@ -16,7 +16,7 @@
{{
$t(
- "components.card-change-account-info.password.current-password"
+ "components.card_change_account_info_password.current_password"
)
}}
*
@@ -34,7 +34,7 @@
{{
- $t("components.card-change-account-info.password.new-password")
+ $t("components.card_change_account_info_password.new_password")
}}
*
@@ -43,21 +43,21 @@
class="peer rounded-sm border border-light-text bg-transparent px-3 py-1 dark:border-dark-text"
:placeholder="
$t(
- 'components.card-change-account-info.password.enter-new-password'
+ 'components.card_change_account_info_password.enter_new_password'
)
"
/>
{{ $t("_global.repeat-password") }} * {{ $t("_global.repeat_password") }} *
diff --git a/frontend/components/card/change-account-info/CardChangeAccountInfoUsername.vue b/frontend/components/card/change-account-info/CardChangeAccountInfoUsername.vue
index dc3306608..01e0f189b 100644
--- a/frontend/components/card/change-account-info/CardChangeAccountInfoUsername.vue
+++ b/frontend/components/card/change-account-info/CardChangeAccountInfoUsername.vue
@@ -1,21 +1,21 @@
- {{ $t("components.card-change-account-info.username.header-cta") }}
+ {{ $t("components.card_change_account_info_username.header_cta") }}
diff --git a/frontend/components/card/discussion/CardDiscussion.vue b/frontend/components/card/discussion/CardDiscussion.vue
index 9f52acfa2..157c2e064 100644
--- a/frontend/components/card/discussion/CardDiscussion.vue
+++ b/frontend/components/card/discussion/CardDiscussion.vue
@@ -10,7 +10,7 @@
fontSize="sm"
:leftIcon="IconMap.ARROW_UP"
iconSize="1.25em"
- ariaLabel="components.btn-action.upvote-discussion-aria-label"
+ ariaLabel="components.card.discussion._global.upvote_discussion_aria_label"
/>
@@ -39,7 +39,7 @@
fontSize="sm"
:leftIcon="IconMap.ARROW_UP"
iconSize="1.25em"
- ariaLabel="components.btn-action.upvote-discussion-aria-label"
+ ariaLabel="components.card.discussion._global.upvote_discussion_aria_label"
/>
diff --git a/frontend/components/card/discussion/CardDiscussionEntry.vue b/frontend/components/card/discussion/CardDiscussionEntry.vue
index 6e91ade19..a943d0eb6 100644
--- a/frontend/components/card/discussion/CardDiscussionEntry.vue
+++ b/frontend/components/card/discussion/CardDiscussionEntry.vue
@@ -11,7 +11,7 @@
{{ discussionEntry.author }}
-
{{ $t("components.card-discussion-text.on") }}
+
{{ $t("components.card_discussion_entry.on") }}
{{ discussionEntry.date.toLocaleDateString() }}
@@ -25,7 +25,7 @@
:leftIcon="IconMap.ARROW_UP"
iconSize="1.25em"
:counter="discussionEntry.votes"
- ariaLabel="components.btn-action.upvote-discussion-aria-label"
+ ariaLabel="components.card.discussion._global.upvote_discussion_aria_label"
/>
diff --git a/frontend/components/card/discussion/CardDiscussionInput.vue b/frontend/components/card/discussion/CardDiscussionInput.vue
index f0c58a6db..67835d9fe 100644
--- a/frontend/components/card/discussion/CardDiscussionInput.vue
+++ b/frontend/components/card/discussion/CardDiscussionInput.vue
@@ -7,18 +7,18 @@
@@ -87,7 +87,7 @@
rows="4"
class="focus-brand block w-full rounded-lg border border-light-action-red bg-light-layer-0 p-2.5 text-sm placeholder-light-action-red focus:border-none dark:border-dark-action-red dark:bg-dark-layer-0 dark:text-dark-text dark:placeholder-dark-action-red"
:placeholder="
- $t('components.card-discussion-input.leave-comment-highRisk')
+ $t('components.card_discussion_input.leave_comment_high_risk')
"
>
@@ -96,12 +96,12 @@
id="message"
rows="4"
class="focus-brand block w-full rounded-lg border border-light-section-div bg-light-layer-0 p-2.5 text-sm text-light-text placeholder-light-distinct-text dark:border-dark-section-div dark:bg-dark-layer-0 dark:text-dark-text dark:placeholder-dark-distinct-text"
- :placeholder="$t('components.card-discussion-input.leave-comment')"
+ :placeholder="$t('components.card_discussion_input.leave_comment')"
>
- {{ $t("components.card-discussion-input.markdown-support") }}
+ {{ $t("components.card_discussion_input.markdown_support") }}
@@ -131,9 +131,9 @@
diff --git a/frontend/components/card/get-involved/CardGetInvolvedEvent.vue b/frontend/components/card/get-involved/CardGetInvolvedEvent.vue
index 8090d044f..442a24bc4 100644
--- a/frontend/components/card/get-involved/CardGetInvolvedEvent.vue
+++ b/frontend/components/card/get-involved/CardGetInvolvedEvent.vue
@@ -12,7 +12,7 @@
:sectionsToEdit="[
$t('_global.about'),
$t('components._global.participate'),
- $t('components._global.offer-to-help-link'),
+ $t('components._global.offer_to_help_link'),
]"
:isOpen="modalIsOpen"
/>
@@ -21,9 +21,9 @@
{{ event.getInvolved }}
- {{ $t("components.card-get-involved.participate-subtext") }}
+ {{ $t("components._global.participate_subtext") }}
@@ -31,11 +31,11 @@
class="w-full"
:cta="true"
linkTo="/"
- label="components.btn-route-internal.offer-to-help"
+ label="_global.offer_to_help"
fontSize="sm"
:rightIcon="IconMap.ARROW_RIGHT"
iconSize="1.45em"
- ariaLabel="components.btn-route-internal.offer-to-help-aria-label"
+ ariaLabel="_global.offer_to_help_aria_label"
/>
diff --git a/frontend/components/card/get-involved/CardGetInvolvedGroup.vue b/frontend/components/card/get-involved/CardGetInvolvedGroup.vue
index 91658b8a1..d38256b6e 100644
--- a/frontend/components/card/get-involved/CardGetInvolvedGroup.vue
+++ b/frontend/components/card/get-involved/CardGetInvolvedGroup.vue
@@ -2,7 +2,7 @@
- {{ $t("components._global.get-involved") }}
+ {{ $t("components._global.get_involved") }}
@@ -22,18 +22,18 @@
v-if="group.getInvolvedURL"
:cta="true"
:linkTo="group.getInvolvedURL"
- label="components.btn-route-internal.join-group"
+ label="_global.join_group"
fontSize="sm"
:rightIcon="IconMap.ARROW_RIGHT"
iconSize="1.45em"
- ariaLabel="components.btn-route-internal.join-group-aria-label"
+ ariaLabel="_global.join_group_aria_label"
/>
{{
- $t("components.card-get-involved.join-group-subtext", {
+ $t("components._global.join_group_subtext", {
org_name: group.name,
})
}}.
diff --git a/frontend/components/card/get-involved/CardGetInvolvedOrganization.vue b/frontend/components/card/get-involved/CardGetInvolvedOrganization.vue
index bcca4bed1..c781147cb 100644
--- a/frontend/components/card/get-involved/CardGetInvolvedOrganization.vue
+++ b/frontend/components/card/get-involved/CardGetInvolvedOrganization.vue
@@ -2,7 +2,7 @@
- {{ $t("components._global.get-involved") }}
+ {{ $t("components._global.get_involved") }}
{{
- $t("components.card-get-involved.working-groups-subtext", {
+ $t("components._global.working_groups_subtext", {
entity_name: organization.name,
})
}}:
@@ -51,7 +51,7 @@
{{
- $t("components.card-get-involved.join-organization-subtext", {
+ $t("components._global.join_organization_subtext", {
entity_name: organization.name,
})
}}.
diff --git a/frontend/components/card/search-result/CardSearchResult.vue b/frontend/components/card/search-result/CardSearchResult.vue
index 9f1893a3c..3e7dc83cf 100644
--- a/frontend/components/card/search-result/CardSearchResult.vue
+++ b/frontend/components/card/search-result/CardSearchResult.vue
@@ -21,7 +21,7 @@
}"
:src="imageURL"
:alt="
- $t('components.card-search-result-organization.img-alt-text') +
+ $t('components.card_search_result.organization_img_alt_text') +
' ' +
organization.name
"
@@ -34,7 +34,7 @@
}"
:src="imageURL"
:alt="
- $t('components.card-search-result-organization.img-alt-text') +
+ $t('components.card_search_result.organization_img_alt_text') +
' ' +
group.organization.name
"
@@ -62,7 +62,7 @@
:eventType="eventType"
:imgURL="imageURL"
:alt="
- $t('components.card-search-result.event-img-alt-text', {
+ $t('components.card_search_result.event_img_alt_text', {
entity_name: name,
})
"
@@ -167,7 +167,7 @@
@@ -181,7 +181,7 @@
@@ -195,15 +195,15 @@
/>
@@ -248,15 +248,19 @@ const { linkURL } = useLinkURL(props);
const ariaLabel = computed(() => {
if (props.organization) {
- return i18n.t("components._global.navigate-to-organization-aria-label");
+ return i18n.t(
+ "components.card_search_result.navigate_to_organization_aria_label"
+ );
} else if (props.group) {
- return i18n.t("components._global.navigate-to-group-aria-label");
+ return i18n.t("components._global.navigate_to_group_aria_label");
} else if (props.event) {
- return i18n.t("components._global.navigate-to-event-aria-label");
+ return i18n.t("components.card_search_result.navigate_to_event_aria_label");
} else if (props.resource) {
- return i18n.t("components._global.navigate-to-resource-aria-label");
+ return i18n.t(
+ "components.card_search_result.navigate_to_resource_aria_label"
+ );
} else if (props.user) {
- return i18n.t("components._global.navigate-to-user-aria-label");
+ return i18n.t("components.card_search_result.navigate_to_user_aria_label");
} else {
return "";
}
diff --git a/frontend/components/combobox/ComboboxTopics.vue b/frontend/components/combobox/ComboboxTopics.vue
index 07c8ee23e..7f6b55653 100644
--- a/frontend/components/combobox/ComboboxTopics.vue
+++ b/frontend/components/combobox/ComboboxTopics.vue
@@ -36,7 +36,7 @@
v-if="filteredTopics.length === 0 && query !== ''"
class="relative cursor-default select-none px-4 py-2 text-light-distinct-text dark:text-dark-distinct-text"
>
- {{ $t("components.combobox-topics.no-matching-topics") }}
+ {{ $t("components.combobox_topics.no_matching_topics") }}
@@ -22,28 +22,28 @@ defineProps<{
const createOptions: MenuSelector[] = [
{
id: 1,
- label: "components._global.new-event",
+ label: "_global.new_event",
routeURL: "/events/create",
iconURL: `${IconMap.EVENT}`,
selected: false,
},
{
id: 2,
- label: "components.dropdown-create.new-organization",
+ label: "components.dropdown_create.new_organization",
routeURL: "/organizations/create",
iconURL: "IconOrganization",
selected: false,
},
{
id: 3,
- label: "components._global.new-group",
+ label: "_global.new_group",
routeURL: "/groups/create",
iconURL: "IconGroup",
selected: false,
},
{
id: 4,
- label: "components._global.new-resource",
+ label: "_global.new_resource",
routeURL: "/resources/create",
iconURL: "IconResource",
selected: false,
diff --git a/frontend/components/dropdown/DropdownInfo.vue b/frontend/components/dropdown/DropdownInfo.vue
index e624fab68..bbce76fde 100644
--- a/frontend/components/dropdown/DropdownInfo.vue
+++ b/frontend/components/dropdown/DropdownInfo.vue
@@ -2,9 +2,9 @@
diff --git a/frontend/components/dropdown/DropdownLanguage.vue b/frontend/components/dropdown/DropdownLanguage.vue
index 8174feb16..95c2b07a7 100644
--- a/frontend/components/dropdown/DropdownLanguage.vue
+++ b/frontend/components/dropdown/DropdownLanguage.vue
@@ -5,7 +5,7 @@
:menuButtonIcon="IconMap.GLOBE"
:menuButtonLabel="$i18n.locale"
:isMenuButtonUppercase="true"
- menuButtonAriaLabel="components.selector-language.open-dropdown-aria-label"
+ menuButtonAriaLabel="components.dropdown_language.open_dropdown_aria_label"
>
diff --git a/frontend/components/footer/FooterWebsite.vue b/frontend/components/footer/FooterWebsite.vue
index 1e89c87f5..66db7979e 100644
--- a/frontend/components/footer/FooterWebsite.vue
+++ b/frontend/components/footer/FooterWebsite.vue
@@ -70,12 +70,12 @@ const organizationLinks = [
const platformLinks = [
{
- name: "components.footer.version-number",
+ name: "components.footer_website.version_number",
isLocalePath: false,
url: "https://github.com/activist-org/activist/releases",
},
{
- name: "components.footer.source-code",
+ name: "components.footer_website.source_code",
isLocalePath: false,
url: "https://github.com/activist-org/activist",
},
@@ -88,11 +88,11 @@ const platformLinks = [
const legalLinks = [
{
- name: "_global.trademark-policy",
+ name: "_global.trademark_policy",
url: "/legal/trademark-policy",
},
{
- name: "_global.privacy-policy",
+ name: "_global.privacy_policy",
url: "/legal/privacy-policy",
},
];
diff --git a/frontend/components/footer/flex/FooterFlex.vue b/frontend/components/footer/flex/FooterFlex.vue
index 28004f2d9..b763188dd 100644
--- a/frontend/components/footer/flex/FooterFlex.vue
+++ b/frontend/components/footer/flex/FooterFlex.vue
@@ -10,7 +10,7 @@
/>
- {{ $t("components.footer._global.activist-tagline") }}
+ {{ $t("components.footer.flex._global.activist_tagline") }}
@@ -48,11 +48,13 @@
href="https://www.netlify.com/"
target="_blank"
>
- {{ $t("components.footer._global.powered-by-netlify") }}
+ {{ $t("components.footer.flex._global.powered_by_netlify") }}
{{
- $t("components._global.copyright", { year: new Date().getFullYear() })
+ $t("components.footer.flex._global.copyright", {
+ year: new Date().getFullYear(),
+ })
}}
diff --git a/frontend/components/footer/flex/FooterFlexCol.vue b/frontend/components/footer/flex/FooterFlexCol.vue
index c67b3da68..201b09088 100644
--- a/frontend/components/footer/flex/FooterFlexCol.vue
+++ b/frontend/components/footer/flex/FooterFlexCol.vue
@@ -9,7 +9,7 @@
/>
- {{ $t("components.footer._global.activist-tagline") }}
+ {{ $t("components.footer.flex._global.activist_tagline") }}
@@ -134,11 +134,13 @@
href="https://www.netlify.com/"
target="_blank"
>
- {{ $t("components.footer._global.powered-by-netlify") }}
+ {{ $t("components.footer.flex._global.powered_by_netlify") }}
{{
- $t("components._global.copyright", { year: new Date().getFullYear() })
+ $t("components.footer.flex._global.copyright", {
+ year: new Date().getFullYear(),
+ })
}}
diff --git a/frontend/components/form/FormViewSelector.vue b/frontend/components/form/FormViewSelector.vue
index 72df23d6f..ee3e2465f 100644
--- a/frontend/components/form/FormViewSelector.vue
+++ b/frontend/components/form/FormViewSelector.vue
@@ -2,7 +2,7 @@
{
// Dictionary is used to assure that the full keys are present and picked up by the i18n checks.
const viewAriaLabelsDict = {
- map: "components.view-selector.view-as-map-aria-label",
- list: "components.view-selector.view-as-list-aria-label",
- calendar: "components.view-selector.view-as-calendar-aria-label",
- grid: "components.view-selector.view-as-grid-aria-label",
+ map: "components.form_view_selector.view_as_map_aria_label",
+ list: "components.form_view_selector.view_as_list_aria_label",
+ calendar: "components.form_view_selector.view_as_calendar_aria_label",
+ grid: "components.form_view_selector.view_as_grid_aria_label",
};
const viewTypeIcons: Record = {
diff --git a/frontend/components/form/radio/FormRadioGroup.vue b/frontend/components/form/radio/FormRadioGroup.vue
index a2cd7fb7e..d7fd873b1 100644
--- a/frontend/components/form/radio/FormRadioGroup.vue
+++ b/frontend/components/form/radio/FormRadioGroup.vue
@@ -24,7 +24,7 @@
:for="customValueType"
class="sr-only"
>{{
- $t("components.form-radio-group.custom-numeric-value-placeholder")
+ $t("components.form_radio_group.custom_numeric_value_placeholder")
}}
- {{ $t("components.grid-app-shields.download-on-the") }}
+ {{ $t("components.grid_app_shields.download_on_the") }}
- {{ $t("components.grid-app-shields.app-store") }}
+ {{ $t("components.grid_app_shields.app_store") }}
@@ -17,10 +17,10 @@
- {{ $t("components.grid-app-shields.get-it-on") }}
+ {{ $t("components.grid_app_shields.get_it_on") }}
- {{ $t("components.grid-app-shields.google-play") }}
+ {{ $t("components.grid_app_shields.google_play") }}
@@ -30,10 +30,10 @@
- {{ $t("components.grid-app-shields.get-it-on") }}
+ {{ $t("components.grid_app_shields.get_it_on") }}
- {{ $t("components.grid-app-shields.f-droid") }}
+ {{ $t("components.grid_app_shields.f_droid") }}
diff --git a/frontend/components/grid/GridGitHubContributors.vue b/frontend/components/grid/GridGitHubContributors.vue
index f557a0f59..13d2858af 100644
--- a/frontend/components/grid/GridGitHubContributors.vue
+++ b/frontend/components/grid/GridGitHubContributors.vue
@@ -10,7 +10,7 @@
class="h-16 w-16 rounded-full ring-2 ring-light-section-div hover:ring-2 hover:ring-light-cta-orange hover:ring-offset-2 dark:ring-dark-section-div dark:hover:ring-light-cta-orange dark:hover:ring-offset-dark-layer-0"
:src="item.avatarUrl"
:alt="
- $t('components.grid-github-contributors.img-alt-text') +
+ $t('components.grid_git_hub_contributors.img_alt_text') +
' ' +
item.loginID
"
@@ -27,13 +27,13 @@
@click="onClickLoadMoreContributors"
class="focus-brand flex w-20 flex-col items-center space-y-1"
:aria-label="
- $t('components.grid-github-contributors.load-more-aria-label')
+ $t('components.grid_git_hub_contributors.load_more_aria_label')
"
>
- {{ $t("components.grid-github-contributors.load-more") }}
+ {{ $t("components.grid_git_hub_contributors.load_more") }}
diff --git a/frontend/components/grid/GridGitHubShields.vue b/frontend/components/grid/GridGitHubShields.vue
index ab60998f6..826fbfb54 100644
--- a/frontend/components/grid/GridGitHubShields.vue
+++ b/frontend/components/grid/GridGitHubShields.vue
@@ -8,7 +8,7 @@
- {{ $t("components.grid-github-shields.visit-us") }}
+ {{ $t("components.grid_git_hub_shields.visit_us") }}
{{ $t("components._global.github") }}
@@ -18,7 +18,7 @@
diff --git a/frontend/components/grid/GridSupporters.vue b/frontend/components/grid/GridSupporters.vue
index 811d74cc9..b991141fb 100644
--- a/frontend/components/grid/GridSupporters.vue
+++ b/frontend/components/grid/GridSupporters.vue
@@ -6,21 +6,21 @@
imageName="WikimediaDE"
imageLink="https://www.wikimedia.de"
:aria-label="
- $t('components.grid-supporters.wikimedia-de-logo-aria-label')
+ $t('components.grid_supporters.wikimedia_de_logo_aria_label')
"
/>
diff --git a/frontend/components/header/HeaderAppPage.vue b/frontend/components/header/HeaderAppPage.vue
index 99dd97b9e..0d61ddf74 100644
--- a/frontend/components/header/HeaderAppPage.vue
+++ b/frontend/components/header/HeaderAppPage.vue
@@ -7,7 +7,7 @@
🚧
-
{{ $t("components.header-app-page.under-development") }}
+
{{ $t("components.header_app_page.under_development") }}
diff --git a/frontend/components/icon/IconActivist.vue b/frontend/components/icon/IconActivist.vue
index ea059856f..bc7ed1561 100644
--- a/frontend/components/icon/IconActivist.vue
+++ b/frontend/components/icon/IconActivist.vue
@@ -16,7 +16,9 @@
d="M116.208 396.836C116.208 469.308 174.947 528.049 247.418 528.049C283.639 528.049 316.456 513.371 340.189 489.608L154.647 304.063C130.915 327.796 116.208 360.614 116.208 396.836ZM430.237 158.409H503.24V635.233H430.237C419.406 635.233 410.41 627.124 410.41 616.294V582.884C366.881 621.058 309.887 644.229 247.448 644.229C110.763 644.259 0 533.464 0 396.836C0 260.207 110.763 149.413 247.418 149.413C309.857 149.413 366.851 172.584 410.381 210.758V177.348C410.381 166.517 419.406 158.409 430.207 158.409H430.237ZM411.92 396.836C411.92 305.987 338.265 232.331 247.418 232.331C156.571 232.331 82.9166 305.987 82.9166 396.836C82.9166 487.685 156.571 561.34 247.418 561.34C338.265 561.34 411.92 487.685 411.92 396.836Z"
/>
-
{{ $t("components.logo-activist.text") }}
+
{{
+ $t("components._global.navigate_to_start")
+ }}
diff --git a/frontend/components/icon/IconOrganizationStatus.vue b/frontend/components/icon/IconOrganizationStatus.vue
index 56ee21d26..e5c2ee469 100644
--- a/frontend/components/icon/IconOrganizationStatus.vue
+++ b/frontend/components/icon/IconOrganizationStatus.vue
@@ -23,7 +23,7 @@
class="invisible -ml-32 mt-3 max-w-56 md:-ml-36 md:max-w-96"
:text="
$t(
- 'components.modal-organization-status.approved-tooltip-hover-text',
+ 'components.icon_organization_status.approved_tooltip_hover_text',
{
entity_name: organization.name,
year: new Date().toISOString().slice(0, 10),
@@ -58,7 +58,7 @@
- {{ $t("components.indicator-password-strength.title") }}:
+ {{ $t("components.indicator_password_strength.title") }}:
{{
$t(
!!passwordValue.length
? text
- : "components.indicator-password-strength.invalid"
+ : "components.indicator_password_strength.invalid"
)
}}
@@ -47,23 +47,23 @@ const text = computed(() => passwordStrengthMap[score.value].text);
const passwordStrengthMap: Record
= {
0: {
color: "bg-[#cc0000] dark:bg-[#e06666]",
- text: "components.indicator-password-strength.very-weak",
+ text: "components.indicator_password_strength.very_weak",
},
1: {
color: "bg-[#e69138] dark:bg-[#f6b26b]",
- text: "components.indicator-password-strength.weak",
+ text: "components.indicator_password_strength.weak",
},
2: {
color: "bg-[#f1c232] dark:bg-[#ffd966]",
- text: "components.indicator-password-strength.medium",
+ text: "components.indicator_password_strength.medium",
},
3: {
color: "bg-[#6aa84f] dark:bg-[#93c47d]",
- text: "components.indicator-password-strength.strong",
+ text: "components.indicator_password_strength.strong",
},
4: {
color: "bg-light-text dark:bg-dark-text",
- text: "components.indicator-password-strength.very-strong",
+ text: "components.indicator_password_strength.very_strong",
},
};
diff --git a/frontend/components/indicator/IndicatorProcessProgress.vue b/frontend/components/indicator/IndicatorProcessProgress.vue
index cf84793ad..9e3e584d9 100755
--- a/frontend/components/indicator/IndicatorProcessProgress.vue
+++ b/frontend/components/indicator/IndicatorProcessProgress.vue
@@ -15,12 +15,12 @@
class="hidden h-full items-center space-x-3 bg-light-cta-orange px-3 text-light-text hover:bg-light-cta-orange/80 dark:bg-dark-cta-orange/10 dark:text-dark-cta-orange dark:hover:bg-dark-cta-orange/25 md:flex"
:to="localePath('/')"
:aria-label="
- $t('components.indicator-process-progress.close-process-aria-label')
+ $t('components.indicator_process_progress.close_process_aria_label')
"
>
{{
- $t("components.indicator-process-progress.close-process")
+ $t("components.indicator_process_progress.close_process")
}}
diff --git a/frontend/components/landing/LandingSplash.vue b/frontend/components/landing/LandingSplash.vue
index ae7338738..47889f769 100644
--- a/frontend/components/landing/LandingSplash.vue
+++ b/frontend/components/landing/LandingSplash.vue
@@ -7,7 +7,7 @@
id="landing-splash-header"
class="w-10/12 text-center font-display text-3xl font-bold leading-snug sm:text-4xl sm:leading-snug md:max-w-lg md:text-5xl md:leading-snug lg:font-bold xl:max-w-2xl xl:text-6xl xl:leading-snug"
>
- {{ $t("components.landing-splash.header") }}
+ {{ $t("components.landing_splash.header") }}
@@ -15,12 +15,12 @@
class="w-10/12 text-center text-base sm:text-xl md:w-3/4 md:text-lg xl:text-2xl"
>
-
{{ $t("components.landing-splash.message-1") }}
-
{{ $t("components.landing-splash.message-2") }}
+
{{ $t("components.landing_splash.message_1") }}
+
{{ $t("components.landing_splash.message_2") }}
- {{ $t("components.landing-splash.message-1") }} {{
- $t("components.landing-splash.message-2")
+ {{ $t("components.landing_splash.message_1") }} {{
+ $t("components.landing_splash.message_2")
}}
@@ -29,10 +29,10 @@
diff --git a/frontend/components/landing/LandingTechBanner.vue b/frontend/components/landing/LandingTechBanner.vue
index b06c60684..cab01b41b 100644
--- a/frontend/components/landing/LandingTechBanner.vue
+++ b/frontend/components/landing/LandingTechBanner.vue
@@ -5,17 +5,17 @@
- {{ $t("components.landing-tech-banner.open-header") }}
+ {{ $t("components.landing_tech_banner.open_header") }}
- {{ $t("components.landing-tech-banner.open-source-tagline") }}
+ {{ $t("components.landing_tech_banner.open_source_tagline") }}
- {{ $t("components.landing-tech-banner.open-source-text") }}
+ {{ $t("components.landing_tech_banner.open_source_text") }}
diff --git a/frontend/components/logo/LogoActivist.vue b/frontend/components/logo/LogoActivist.vue
index b38af5d58..f205cc035 100644
--- a/frontend/components/logo/LogoActivist.vue
+++ b/frontend/components/logo/LogoActivist.vue
@@ -2,7 +2,7 @@
- {{ $t("components.logo-activist.text") }}
+ {{
+ $t("components._global.navigate_to_start")
+ }}
diff --git a/frontend/components/media/MediaMap.vue b/frontend/components/media/MediaMap.vue
index 6c3277096..e82c14abf 100644
--- a/frontend/components/media/MediaMap.vue
+++ b/frontend/components/media/MediaMap.vue
@@ -9,7 +9,7 @@
import MapLibreGlDirections, {
layersFactory,
} from "@maplibre/maplibre-gl-directions";
-import maplibregl from "maplibre-gl";
+import maplibregl, { Map } from "maplibre-gl";
import "maplibre-gl/dist/maplibre-gl.css";
const props = defineProps<{
@@ -90,6 +90,7 @@ const routeProfileMap: RouteProfile[] = [
const walkingRouteProfileControl = `
diff --git a/frontend/components/modal/ModalBase.vue b/frontend/components/modal/ModalBase.vue
index 4a3ee7e44..3254a17d7 100644
--- a/frontend/components/modal/ModalBase.vue
+++ b/frontend/components/modal/ModalBase.vue
@@ -24,7 +24,7 @@
v-if="imageModal"
@click="closeModal()"
class="focus-brand absolute right-0 mr-24 mt-8 rounded-full p-1 text-light-distinct-text hover:text-light-text dark:text-dark-distinct-text hover:dark:text-dark-text"
- :aria-label="$t('components.modal-image.close-modal-aria-label')"
+ :aria-label="$t('components.modal_base.close_modal_aria_label')"
>
@@ -43,7 +43,7 @@
tabindex="0"
role="button"
class="focus-brand flex flex-col items-center justify-center"
- :aria-label="$t('components.modal-image.close-modal-aria-label')"
+ :aria-label="$t('components.modal_base.close_modal_aria_label')"
>
@@ -57,23 +57,47 @@
diff --git a/frontend/components/modal/ModalCommandPalette.vue b/frontend/components/modal/ModalCommandPalette.vue
index f44bb6782..2dfc24572 100644
--- a/frontend/components/modal/ModalCommandPalette.vue
+++ b/frontend/components/modal/ModalCommandPalette.vue
@@ -1,37 +1,15 @@
-
-
-
-
-
-
-
+
-
-
-
+
Searching for: {{ searchTerm }}
@@ -48,7 +26,6 @@
class="max-h-40 overflow-y-auto pt-2"
>
-
- {{ $t("components.modal-command-palette.jump-to") }}
+ {{ $t("components.modal_command_palette.jump_to") }}
@@ -100,7 +77,6 @@ import {
} from "@headlessui/vue";
const props = defineProps<{
- isOpen: boolean;
paletteData: Command[];
}>();
@@ -112,13 +88,7 @@ interface Command {
action: () => void;
}
-const modals = useModals();
const modalName = "ModalCommandPalette";
-let modalIsOpen = computed(() => props.isOpen);
-
-onMounted(() => {
- modalIsOpen = computed(() => modals.modals[modalName].isOpen);
-});
const searchTerm = ref("");
const selectedCommand = ref(null);
@@ -127,8 +97,8 @@ const filteredCommands = ref([]);
const router = useRouter();
const handleCloseModal = () => {
+ // Watch for closeModal emit and do cleanup when it happens.
searchTerm.value = "";
- modals.closeModal(modalName);
};
const handleClick = (command: Command) => {
diff --git a/frontend/components/modal/ModalMediaImageCarousel.vue b/frontend/components/modal/ModalMediaImageCarousel.vue
index 371c2bfa4..1fbf86996 100644
--- a/frontend/components/modal/ModalMediaImageCarousel.vue
+++ b/frontend/components/modal/ModalMediaImageCarousel.vue
@@ -1,27 +1,9 @@
-
+
diff --git a/frontend/components/modal/ModalOrganizationStatus.vue b/frontend/components/modal/ModalOrganizationStatus.vue
index a4fe67eb5..8d8a5fd21 100644
--- a/frontend/components/modal/ModalOrganizationStatus.vue
+++ b/frontend/components/modal/ModalOrganizationStatus.vue
@@ -13,7 +13,7 @@
- {{ $t("components.modal-organization-status.status-accepted") }}
+ {{ $t("components.modal_organization_status.status_accepted") }}
-
+
- {{ $t("components.modal-share-page.header") }}
+ {{ $t("components.modal_share_page.header") }}
- {{ $t("components.modal-share-page.online") }}
+ {{ $t("components.modal_share_page.online") }}
@@ -48,7 +44,7 @@
@@ -90,14 +86,63 @@
-
+
+
+
+
@@ -152,7 +197,7 @@
- {{ $t("components.modal-share-page.offline") }}
+ {{ $t("components.modal_share_page.offline") }}
-->
@@ -210,19 +255,8 @@ const props = defineProps<{
event?: Event;
resource?: Resource;
user?: User;
- isOpen: boolean;
}>();
-const modals = useModals();
const modalName = "ModalSharePage";
-let modalIsOpen = computed(() => props.isOpen);
-
-onMounted(() => {
- modalIsOpen = computed(() => modals.modals[modalName].isOpen);
-});
-
-const handleCloseModal = () => {
- modals.closeModal(modalName);
-};
const getEntityType = () => {
if (props.organization) {
@@ -283,6 +317,7 @@ const shareOptions = {
const useNativeBehavior = false;
const contentCopied = ref(false);
+const signalContentCopied = ref(false);
// No specific actions should be taken on these events, but we can customize the behavior if needed.
const nativeBehaviorOptions = {
@@ -306,4 +341,24 @@ const copyToClipboard = async (name: string, url: string) => {
contentCopied.value = false;
}
};
+
+const copyToClipboardThenOpenURL = async (
+ name: string,
+ url: string,
+ redirectURL?: string
+) => {
+ try {
+ await navigator.clipboard.writeText(url);
+ signalContentCopied.value = true;
+ setTimeout(() => {
+ signalContentCopied.value = false;
+ if (redirectURL) {
+ window.open(redirectURL, "_blank");
+ }
+ }, 2000);
+ } catch (error) {
+ console.error(`Could not copy text: ${error}`);
+ signalContentCopied.value = false;
+ }
+};
diff --git a/frontend/components/modal/edit/ModalEditFaqEntry.vue b/frontend/components/modal/edit/ModalEditFaqEntry.vue
index 84d842c16..e15ee9254 100644
--- a/frontend/components/modal/edit/ModalEditFaqEntry.vue
+++ b/frontend/components/modal/edit/ModalEditFaqEntry.vue
@@ -13,16 +13,16 @@
{{ s }}
-
{{ $t("components.modal-edit-page-text.remember-https") }}
+
{{ $t("components.modal.edit._global.remember_https") }}
@@ -60,10 +58,10 @@ const editedTexts = computed(() => props.textsToEdit);
const translatedTexts = computed(() => {
return editedTexts.value.map((text) => {
if (
- text === "components.card-get-involved.working-groups-subtext" ||
- text === "components.card-get-involved.join-organization-subtext" ||
- text === "components.card-get-involved.join-group-subtext" ||
- text === "components.card-get-involved.participate-subtext"
+ text === "components._global.working_groups_subtext" ||
+ text === "components._global.join_organization_subtext" ||
+ text === "components._global.join_group_subtext" ||
+ text === "components._global.participate_subtext"
) {
return i18n.t(text, { entity_name: props.name }) + ".";
}
diff --git a/frontend/components/modal/edit/about/ModalEditAboutEvent.vue b/frontend/components/modal/edit/about/ModalEditAboutEvent.vue
index 2d7f1c3c1..3d3898a2c 100644
--- a/frontend/components/modal/edit/about/ModalEditAboutEvent.vue
+++ b/frontend/components/modal/edit/about/ModalEditAboutEvent.vue
@@ -28,9 +28,9 @@
{{
- $t("components._global.offer-to-help-link")
+ $t("components._global.offer_to_help_link")
}}
-
{{ $t("components.modal-edit-page-text.remember-https") }}
+
{{ $t("components.modal.edit._global.remember_https") }}
diff --git a/frontend/components/modal/edit/about/ModalEditAboutGroup.vue b/frontend/components/modal/edit/about/ModalEditAboutGroup.vue
index 7dd4b277b..54f423371 100644
--- a/frontend/components/modal/edit/about/ModalEditAboutGroup.vue
+++ b/frontend/components/modal/edit/about/ModalEditAboutGroup.vue
@@ -17,7 +17,7 @@
{{
- $t("components._global.get-involved")
+ $t("components._global.get_involved")
}}
@@ -105,12 +105,12 @@ export interface Props {
}
const props = withDefaults(defineProps
(), {
- header: "components.page-community-footer.invite-text-1",
+ header: "components.page_community_footer.invite_text_1",
});
const headerText = ref(props.header);
if (props.helpNeeded == true) {
- headerText.value = "components.page-community-footer.need-help";
+ headerText.value = "components.page_community_footer.need_help";
}
diff --git a/frontend/components/shield/ShieldPrivate.vue b/frontend/components/shield/ShieldPrivate.vue
index a522ffa77..bb25b2702 100644
--- a/frontend/components/shield/ShieldPrivate.vue
+++ b/frontend/components/shield/ShieldPrivate.vue
@@ -17,7 +17,7 @@
:size="iconSize"
/>
{{
- $t("components.shield-private.private")
+ $t("components.shield_private.private")
}}
diff --git a/frontend/components/sidebar/left/SidebarLeft.vue b/frontend/components/sidebar/left/SidebarLeft.vue
index 1f665941e..2003167f8 100644
--- a/frontend/components/sidebar/left/SidebarLeft.vue
+++ b/frontend/components/sidebar/left/SidebarLeft.vue
@@ -197,21 +197,21 @@ const filters = {
title: "",
name: "eventLocationSearch",
type: "search",
- placeholder: "components.sidebar-left.location-search-placeholder",
+ placeholder: "components.sidebar_left.location_search_placeholder",
},
locationSearch: {
sidebarType: [SidebarType.ORGANIZATION_FILTER, SidebarType.SEARCH],
title: "Location",
name: "locationSearch",
type: "search",
- placeholder: "components.sidebar-left.location-search-placeholder",
+ placeholder: "components.sidebar_left.location_search_placeholder",
},
organizationSearch: {
sidebarType: [SidebarType.EVENT_FILTER],
title: "Organization",
name: "organizationSearch",
type: "search",
- placeholder: "components.sidebar-left.orgs-search-placeholder",
+ placeholder: "components.sidebar_left.orgs_search_placeholder",
},
topic: {
sidebarType: [
@@ -251,14 +251,16 @@ const applyTopShadow = ref(false);
function setSidebarContentScrollable(): void {
setTimeout(() => {
- sidebarContentScrollable.value =
- content.value.scrollHeight > content.value.clientHeight ? true : false;
+ if (content && content.value) {
+ sidebarContentScrollable.value =
+ content.value.scrollHeight > content.value.clientHeight ? true : false;
+ }
}, 50);
isAtTop();
}
function isAtTop(): void {
- if (sidebarContentScrollable) {
+ if (sidebarContentScrollable && content && content.value) {
applyTopShadow.value = !(content.value.scrollTop === 0);
}
}
diff --git a/frontend/components/sidebar/left/SidebarLeftHeader.vue b/frontend/components/sidebar/left/SidebarLeftHeader.vue
index 03fba9e10..86fc11775 100644
--- a/frontend/components/sidebar/left/SidebarLeftHeader.vue
+++ b/frontend/components/sidebar/left/SidebarLeftHeader.vue
@@ -44,7 +44,7 @@
'pb-1 pl-0.5': sidebar.collapsedSwitch == true,
}"
:aria-label="
- $t('components.sidebar-left-header.sidebar-collapse-aria-label')
+ $t('components.sidebar_left_header.sidebar_collapse_aria_label')
"
>
diff --git a/frontend/components/sidebar/left/SidebarLeftIndex.vue b/frontend/components/sidebar/left/SidebarLeftIndex.vue
index a69de145e..41f40529f 100644
--- a/frontend/components/sidebar/left/SidebarLeftIndex.vue
+++ b/frontend/components/sidebar/left/SidebarLeftIndex.vue
@@ -20,16 +20,12 @@
>
-
+
-
+
- {{ $t("_global.navigate-to") }}
+ {{ $t("_global.navigate_to") }}
{{ $t(label) }}
{{ $t("_global.navigate-to") }} {{ $t(label) }} {{ $t("_global.navigate_to") }} {{ $t(label) }}
diff --git a/frontend/components/sidebar/right/SidebarRightHamburger.vue b/frontend/components/sidebar/right/SidebarRightHamburger.vue
index 8d09e7da0..9b38c6ff2 100644
--- a/frontend/components/sidebar/right/SidebarRightHamburger.vue
+++ b/frontend/components/sidebar/right/SidebarRightHamburger.vue
@@ -4,7 +4,7 @@
@click="$emit('toggle')"
id="sidebar-right-hamburger"
class="focus-brand group relative z-50 outline-offset-4"
- :aria-label="$t('components.sidebar-right-hamburger.collapse-aria-label')"
+ :aria-label="$t('components.sidebar_right_hamburger.collapse_aria_label')"
>
- {{ $t("pages.about.imprint.section-1-paragraph-1") }}
+ {{ $t("pages.about.imprint.section_1_paragraph_1") }}
- {{ $t("pages.about.imprint.section-1-paragraph-2") }}
+ {{ $t("pages.about.imprint.section_1_paragraph_2") }}
@@ -57,10 +57,10 @@
diff --git a/frontend/pages/about/index.vue b/frontend/pages/about/index.vue
index aecdb72b7..8c3469073 100644
--- a/frontend/pages/about/index.vue
+++ b/frontend/pages/about/index.vue
@@ -15,12 +15,12 @@
- {{ $t("pages.about.index.section-1-subheader") }}
+ {{ $t("pages.about.index.section_1_subheader") }}
- {{ $t("pages.about.index.section-1-tagline") }}
+ {{ $t("pages.about.index.section_1_tagline") }}
@@ -35,28 +35,28 @@ const cards: DocsEntry[] = [
id: 1,
url: "activist",
title: "pages.about.index.activist",
- description: "pages.about.index.activist-description",
+ description: "pages.about.index.activist_description",
imgURL: "/icons/activist/activist_icon",
imgDimensions: "h-12 sm:h-16",
- imgAltText: "_global.activist-icon-img-alt-text",
+ imgAltText: "_global.activist_icon_img_alt_text",
},
{
id: 2,
url: "imprint",
title: "_global.imprint",
- description: "pages.about.index.imprint-description",
+ description: "pages.about.index.imprint_description",
imgURL: `${BOOTSTRAP_INFO_CIRCLE_URL}`,
imgDimensions: "h-16 sm:h-20",
- imgAltText: "pages.about._global.imprint-img-alt-text",
+ imgAltText: "pages.about._global.imprint_img_alt_text",
},
{
id: 3,
url: "roadmap",
title: "_global.roadmap",
- description: "_global.roadmap-description",
+ description: "pages.about.index.roadmap_description",
imgURL: `${ARCTICONS_BIKE_LOCATION}`,
imgDimensions: "h-16 sm:h-20",
- imgAltText: "pages.about._global.roadmap-img-alt-text",
+ imgAltText: "pages.about._global.roadmap_img_alt_text",
},
];
diff --git a/frontend/pages/about/network.vue b/frontend/pages/about/network.vue
index 99bb6a11c..d9d8c9903 100644
--- a/frontend/pages/about/network.vue
+++ b/frontend/pages/about/network.vue
@@ -3,7 +3,7 @@
class="bg-light-layer-0 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
- {{ $t("pages._global.our-network") }}
+ {{ $t("pages._global.our_network") }}
diff --git a/frontend/pages/about/roadmap.vue b/frontend/pages/about/roadmap.vue
index 6db8dd720..91dc7d59c 100644
--- a/frontend/pages/about/roadmap.vue
+++ b/frontend/pages/about/roadmap.vue
@@ -7,7 +7,7 @@
{{ $t("_global.roadmap") }}
@@ -19,41 +19,41 @@
size="1.25em"
/>
- {{ $t("pages._global.visit-source-code-pt-1") }}
+ {{ $t("pages._global.visit_source_code_pt_1") }}
- {{ $t("pages._global.visit-source-code-pt-2") }}
+ {{ $t("pages._global.visit_source_code_pt_2") }}
- {{ $t("pages._global.visit-source-code-pt-3") }}
+ {{ $t("pages._global.visit_source_code_pt_3") }}
- {{ $t("pages.about.roadmap.section-1-paragraph-1") }}
+ {{ $t("pages.about.roadmap.section_1_paragraph_1") }}
diff --git a/frontend/pages/auth/reset-password.vue b/frontend/pages/auth/reset-password.vue
index 2687695b6..cba8ef84c 100644
--- a/frontend/pages/auth/reset-password.vue
+++ b/frontend/pages/auth/reset-password.vue
@@ -1,24 +1,24 @@
- {{ $t("pages.auth.reset-password.index.reset-password-info") }}
+ {{ $t("pages.auth.reset_password.index.reset_password_info") }}
diff --git a/frontend/pages/auth/set-password.vue b/frontend/pages/auth/set-password.vue
index 3608d2bc7..ee0ee8797 100644
--- a/frontend/pages/auth/set-password.vue
+++ b/frontend/pages/auth/set-password.vue
@@ -3,7 +3,7 @@
diff --git a/frontend/pages/auth/sign-in.vue b/frontend/pages/auth/sign-in.vue
index 21185773b..70f7432a1 100644
--- a/frontend/pages/auth/sign-in.vue
+++ b/frontend/pages/auth/sign-in.vue
@@ -4,14 +4,14 @@
-
{{ $t("pages.auth.sign-in.index.no-account") }}
+ {{ $t("pages.auth.sign_in.index.no_account") }}
diff --git a/frontend/pages/auth/sign-up.vue b/frontend/pages/auth/sign-up.vue
index 8b787574d..cc0b08bd2 100644
--- a/frontend/pages/auth/sign-up.vue
+++ b/frontend/pages/auth/sign-up.vue
@@ -4,7 +4,7 @@
@@ -20,7 +20,7 @@
isFocused = true;
isBlurred = false;
"
- :placeholder="$t('components._global.enter-password')"
+ :placeholder="$t('_global.enter_password')"
:is-icon-visible="true"
input-type="password"
:model-value="passwordValue"
@@ -40,7 +40,7 @@
- {{ $t("pages._global.terms-of-service-pt-1") }}
+ {{ $t("pages._global.terms_of_service_pt_1") }}
{{ $t("pages._global.terms-of-service-pt-2") }}
+ >{{ $t("pages._global.terms_of_service_pt_2") }}
-
{{ $t("pages.auth.sign-up.index.have-account") }}
+ {{ $t("pages.auth.sign_up.index.have_account") }}
{{ $t("_global.sign_in") }}
diff --git a/frontend/pages/docs/get-active.vue b/frontend/pages/docs/get-active.vue
index 751d20656..389b22335 100644
--- a/frontend/pages/docs/get-active.vue
+++ b/frontend/pages/docs/get-active.vue
@@ -3,7 +3,7 @@
class="bg-light-layer-0 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
- {{ $t("_global.get-active") }}
+ {{ $t("pages._global.get_active") }}
- {{ $t("pages.docs.get-active.header") }}
+ {{ $t("pages.docs.get_active.header") }}
- {{ $t("pages.docs.get-active.section-1-paragraph-1") }}
+ {{ $t("pages.docs.get_active.section_1_paragraph_1") }}
-
{{ $t("pages.docs.get-active.section-2-paragraph-1") }}:
+
{{ $t("pages.docs.get_active.section_2_paragraph_1") }}:
- {{ $t("pages.docs.get-active.section-2-list-1-item-1") }}
+ {{ $t("pages.docs.get_active.section_2_list_1_item_1") }}
- {{ $t("pages.docs.get-active.section-2-list-1-item-1-1") }}
+ {{ $t("pages.docs.get_active.section_2_list_1_item_1_1") }}
- {{ $t("pages.docs.get-active.section-2-list-1-item-2") }}
+ {{ $t("pages.docs.get_active.section_2_list_1_item_2") }}
- {{ $t("pages.docs.get-active.section-2-list-1-item-2-1") }}
+ {{ $t("pages.docs.get_active.section_2_list_1_item_2_1") }}
- {{ $t("pages.docs.get-active.section-2-list-1-item-3") }}
+ {{ $t("pages.docs.get_active.section_2_list_1_item_3") }}
- {{ $t("pages.docs.get-active.section-2-list-1-item-3-1") }}
+ {{ $t("pages.docs.get_active.section_2_list_1_item_3_1") }}
- {{ $t("pages.docs.get-active.section-2-list-1-item-3-2") }}
+ {{ $t("pages.docs.get_active.section_2_list_1_item_3_2") }}
- {{ $t("pages.docs.get-active.section-3-paragraph-1") }}
+ {{ $t("pages.docs.get_active.section_3_paragraph_1") }}
diff --git a/frontend/pages/docs/get-organized.vue b/frontend/pages/docs/get-organized.vue
index a6b4a47bc..4eaa9a25a 100644
--- a/frontend/pages/docs/get-organized.vue
+++ b/frontend/pages/docs/get-organized.vue
@@ -3,7 +3,7 @@
class="bg-light-layer-0 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
-
{{ $t("_global.get-organized") }}
+
{{ $t("pages._global.get_organized") }}
- {{ $t("pages.docs.get-organized.header") }}
+ {{ $t("pages.docs.get_organized.header") }}
- {{ $t("pages.docs.get-organized.section-1-paragraph-1") }}
+ {{ $t("pages.docs.get_organized.section_1_paragraph_1") }}
- {{ $t("pages.docs.get-organized.section-1-paragraph-2") }}
+ {{ $t("pages.docs.get_organized.section_1_paragraph_2") }}
- {{ $t("pages.docs.get-organized.section-1-paragraph-3") }}
+ {{ $t("pages.docs.get_organized.section_1_paragraph_3") }}
diff --git a/frontend/pages/docs/grow-organization.vue b/frontend/pages/docs/grow-organization.vue
index c5eb74e98..2b8c9ee49 100644
--- a/frontend/pages/docs/grow-organization.vue
+++ b/frontend/pages/docs/grow-organization.vue
@@ -3,7 +3,7 @@
class="bg-light-layer-0 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
-
{{ $t("_global.grow-organization") }}
+
{{ $t("pages._global.grow_organization") }}
- {{ $t("pages.docs.grow-organization.header") }}
+ {{ $t("pages.docs.grow_organization.header") }}
- {{ $t("pages.docs.grow-organization.section-1-paragraph-1") }}
+ {{ $t("pages.docs.grow_organization.section_1_paragraph_1") }}
- {{ $t("pages.docs.grow-organization.section-1-paragraph-2") }}
+ {{ $t("pages.docs.grow_organization.section_1_paragraph_2") }}
- {{ $t("pages.docs.grow-organization.section-1-paragraph-3-1") }}
+ {{ $t("pages.docs.grow_organization.section_1_paragraph_3_1") }}
{{
- $t("pages.docs.grow-organization.section-1-paragraph-3-2")
+ $t("pages.docs.grow_organization.section_1_paragraph_3_2")
}}
- {{ $t("pages.docs.grow-organization.section-1-paragraph-3-3") }}
+ {{ $t("pages.docs.grow_organization.section_1_paragraph_3_3") }}
- {{ $t("pages.docs.grow-organization.section-1-paragraph-4") }}
+ {{ $t("pages.docs.grow_organization.section_1_paragraph_4") }}
diff --git a/frontend/pages/docs/index.vue b/frontend/pages/docs/index.vue
index 974849c13..91eae3b1a 100644
--- a/frontend/pages/docs/index.vue
+++ b/frontend/pages/docs/index.vue
@@ -15,12 +15,12 @@
- {{ $t("pages.docs.index.section-1-subheader") }}
+ {{ $t("pages.docs.index.section_1_subheader") }}
- {{ $t("pages.docs.index.section-1-tagline") }}
+ {{ $t("pages.docs.index.section_1_tagline") }}
@@ -34,29 +34,29 @@ const cards: DocsEntry[] = [
{
id: 1,
url: "get-active",
- title: "pages.docs.index.get-active",
- description: "pages.docs.index.get-active-description",
+ title: "pages.docs.index.get_active",
+ description: "pages.docs.index.get_active_description",
imgURL: `${GET_ACTIVE_IMAGE_URL}`,
imgDimensions: "h-20 sm:h-24",
- imgAltText: "pages._global.get-active-img-alt-text",
+ imgAltText: "pages._global.get_active_img_alt_text",
},
{
id: 2,
url: "get-organized",
- title: "pages.docs.index.get-organized",
- description: "pages.docs.index.get-organized-description",
+ title: "pages.docs.index.get_organized",
+ description: "pages.docs.index.get_organized_description",
imgURL: `${GET_ORGANIZED_IMAGE_URL}`,
imgDimensions: "h-16 sm:h-20",
- imgAltText: "pages._global.get-organized-img-alt-text",
+ imgAltText: "pages._global.get_organized_img_alt_text",
},
{
id: 3,
url: "grow-organization",
- title: "pages.docs.index.grow-organization",
- description: "pages.docs.index.grow-organization-description",
+ title: "pages.docs.index.grow_organization",
+ description: "pages.docs.index.grow_organization_description",
imgURL: `${GROW_ORGANIZATION_IMAGE_URL}`,
imgDimensions: "h-16 sm:h-20",
- imgAltText: "pages._global.grow-organization-img-alt-text",
+ imgAltText: "pages._global.grow_organization_img_alt_text",
},
];
diff --git a/frontend/pages/events/[id]/about.vue b/frontend/pages/events/[id]/about.vue
index 85b8f901c..116dd81b9 100644
--- a/frontend/pages/events/[id]/about.vue
+++ b/frontend/pages/events/[id]/about.vue
@@ -12,22 +12,22 @@
class="w-max"
:cta="true"
:linkTo="event.getInvolvedURL"
- label="components.btn-route-internal.offer-to-help"
+ label="_global.offer_to_help"
fontSize="sm"
:rightIcon="IconMap.ARROW_RIGHT"
iconSize="1.45em"
- ariaLabel="components.btn-route-internal.offer-to-help-aria-label"
+ ariaLabel="_global.offer_to_help_aria_label"
/>
- {{ event.name }} {{ $t("_global.discussions_lower") }}
+ {{ event.name }} {{
+ $t("pages._global.discussions_lower")
+ }}
@@ -17,11 +23,11 @@
class="block w-max"
:cta="true"
linkTo="/"
- label="components.btn-route-internal.new-discussion"
+ label="pages._global.new_discussion"
fontSize="sm"
:leftIcon="IconMap.PLUS"
iconSize="1.35em"
- ariaLabel="components.btn-route-internal.new-discussion-aria-label"
+ ariaLabel="pages._global.new_discussion_aria_label"
/>
diff --git a/frontend/pages/events/[id]/index.vue b/frontend/pages/events/[id]/index.vue
index 0ad856fa8..073f20cba 100644
--- a/frontend/pages/events/[id]/index.vue
+++ b/frontend/pages/events/[id]/index.vue
@@ -11,7 +11,7 @@
:eventType="event.type"
:imgURL="event.iconURL ? event.iconURL : ''"
:alt="
- $t('components._global.entity-logo', {
+ $t('_global.entity_logo', {
entity_name: event?.name,
})
"
@@ -48,7 +48,7 @@
@@ -57,11 +57,11 @@
class="w-max"
:cta="true"
linkTo="/"
- label="components.btn-route-internal.offer-to-help"
+ label="_global.offer_to_help"
fontSize="base"
:rightIcon="IconMap.ARROW_RIGHT"
iconSize="1.25em"
- ariaLabel="components.btn-route-internal.offer-to-help-aria-label"
+ ariaLabel="_global.offer_to_help_aria_label"
/>
@@ -72,56 +72,20 @@ import { BreakpointMap } from "~/types/breakpoint-map";
import { IconMap } from "~/types/icon-map";
import type { MenuSelector } from "~/types/menu/menu-selector";
import { testClimateEvent } from "~/utils/testEntities";
+import useMenuEntriesState from "~/composables/useMenuEntriesState";
const event = testClimateEvent;
const { id } = useRoute().params;
const localPath = useLocalePath();
-const eventButtons: MenuSelector[] = [
- {
- id: 1,
- label: "_global.about",
- routeURL: "/events/" + id + "/about",
- iconURL: `${IconMap.ABOUT}`,
- selected: useRoute().path.split("/").pop() === "about" ? true : true,
- },
- {
- id: 2,
- label: "_global.team",
- routeURL: "/events/" + id + "/team",
- iconURL: `${IconMap.PEOPLE}`,
- selected: useRoute().path.split("/").pop() === "team" ? true : true,
- },
- {
- id: 3,
- label: "_global.resources",
- routeURL: "/events/" + id + "/resources",
- iconURL: `${IconMap.RESOURCE}`,
- selected: useRoute().path.split("/").pop() === "resources" ? true : true,
- },
- {
- id: 4,
- label: "_global.tasks",
- routeURL: "/events/" + id + "/tasks",
- iconURL: `${IconMap.TASK}`,
- selected: useRoute().path.split("/").pop() === "tasks" ? true : true,
- },
- {
- id: 5,
- label: "_global.discussions",
- routeURL: "/events/" + id + "/discussions",
- iconURL: `${IconMap.DISCUSSION}`,
- selected: useRoute().path.split("/").pop() === "discussions" ? true : true,
- },
- {
- id: 6,
- label: "_global.settings",
- routeURL: "/events/" + id + "/settings",
- iconURL: `${IconMap.SETTINGS}`,
- selected: useRoute().path.split("/").pop() === "settings" ? true : true,
- },
-];
+const { eventEntry } = useMenuEntriesState();
+
+const eventButtons: MenuSelector[] = [];
+
+eventEntry.value.forEach((entry) => {
+ eventButtons.push(entry);
+});
const windowWidth = ref(window.innerWidth);
diff --git a/frontend/pages/events/[id]/resources.vue b/frontend/pages/events/[id]/resources.vue
index 6d9dafce0..2608cd698 100644
--- a/frontend/pages/events/[id]/resources.vue
+++ b/frontend/pages/events/[id]/resources.vue
@@ -16,11 +16,11 @@
class="w-max"
:cta="true"
linkTo="/"
- label="components._global.new-resource"
+ label="_global.new_resource"
fontSize="sm"
:leftIcon="IconMap.PLUS"
iconSize="1.35em"
- ariaLabel="components.btn-route-internal.new-resource-aria-label"
+ ariaLabel="pages._global.resources.new_resource_aria_label"
/>
diff --git a/frontend/pages/events/[id]/settings.vue b/frontend/pages/events/[id]/settings.vue
index b5323ad65..8aa4be266 100644
--- a/frontend/pages/events/[id]/settings.vue
+++ b/frontend/pages/events/[id]/settings.vue
@@ -3,30 +3,34 @@
class="flex flex-col bg-light-layer-0 px-4 text-light-text dark:bg-dark-layer-0 dark:text-dark-text xl:px-8"
>
- {{ event.name }} {{ $t("_global.settings_lower") }}
+ {{ event.name }} {{
+ $t("pages._global.settings.settings_lower")
+ }}
diff --git a/frontend/pages/events/[id]/tasks.vue b/frontend/pages/events/[id]/tasks.vue
index d8f107f49..c86fe00e5 100644
--- a/frontend/pages/events/[id]/tasks.vue
+++ b/frontend/pages/events/[id]/tasks.vue
@@ -3,23 +3,27 @@
class="flex flex-col bg-light-layer-0 px-4 text-light-text dark:bg-dark-layer-0 dark:text-dark-text xl:px-8"
>
- {{ event.name }} {{ $t("_global.tasks_lower") }}
+ {{ event.name }} {{
+ $t("pages._global.tasks.tasks_lower")
+ }}
diff --git a/frontend/pages/events/[id]/team.vue b/frontend/pages/events/[id]/team.vue
index 18958d446..f97ce246c 100644
--- a/frontend/pages/events/[id]/team.vue
+++ b/frontend/pages/events/[id]/team.vue
@@ -3,11 +3,13 @@
class="flex flex-col bg-light-layer-0 px-4 text-light-text dark:bg-dark-layer-0 dark:text-dark-text xl:px-8"
>
- {{ event.name }} {{ $t("_global.team_lower") }}
+ {{ event.name }} {{ $t("pages._global.team.team_lower") }}
@@ -15,11 +17,11 @@
diff --git a/frontend/pages/events/create.vue b/frontend/pages/events/create.vue
index db68989fc..6a3c6da9c 100644
--- a/frontend/pages/events/create.vue
+++ b/frontend/pages/events/create.vue
@@ -10,26 +10,26 @@
- {{ $t("pages._global.information") }}
+ {{ $t("pages._global.create.information") }}
- {{ $t("pages.events.create.subtext-0") }}
+ {{ $t("pages.events.create.subtext_0") }}
- {{ $t("pages.events.create.header-1") }}
+ {{ $t("pages.events.create.header_1") }}
- {{ $t("pages.events.create.subtext-1") }}
+ {{ $t("pages.events.create.subtext_1") }}
- {{ $t("pages.events.create.header-2") }}
+ {{ $t("pages.events.create.header_2") }}
- {{ $t("pages.events.create.subtext-2") }}
+ {{ $t("pages.events.create.subtext_2") }}
{{ $t("_global.events-name") }}* {{ $t("pages.events.create.events_name") }}*
@@ -66,7 +66,7 @@
class="bg:light-layer-0 mt-2 w-full rounded-md border border-light-section-div px-4 py-2 dark:border-dark-section-div dark:bg-dark-layer-0"
type="text"
name="tagline"
- :placeholder="$t('pages.events.create.tagline-placeholder')"
+ :placeholder="$t('pages.events.create.tagline_placeholder')"
/>
@@ -75,7 +75,7 @@
>{{ $t("pages.events.create.organizer") }}*
{{
- $t("pages.events.create.organizer-instructions")
+ $t("pages.events.create.organizer_instructions")
}}
@@ -92,14 +92,14 @@
{{ $t("pages._global.description") }}* {{ $t("pages._global.create.description") }}*
@@ -109,7 +109,7 @@
>
- {{ $t("pages.events.create.event-type") }}*
+ {{ $t("pages.events.create.event_type") }}*
@@ -184,7 +184,7 @@
{{ $t("pages._global.location") }}* {{ $t("pages._global.create.location") }}*
{{ $t("pages._global.link") }}* {{ $t("pages._global.create.link") }}*
@@ -218,12 +218,12 @@
- {{ $t("pages._global.terms-of-service-pt-1") }}
+ {{ $t("pages._global.terms_of_service_pt_1") }}
{{ $t("pages._global.terms-of-service-pt-2") }} {{ $t("pages._global.terms_of_service_pt_2") }}
.
@@ -268,11 +268,11 @@
class="absolute left-0 mr-2"
:class="{ 'placeholder-class': hasPreviousPage }"
:cta="false"
- label="pages.events.create.button-left"
+ label="pages.events.create.button_left"
leftIcon="←"
fontSize="lg"
iconSize="1.25em"
- ariaLabel="pages.events.create.go-to-previous-page"
+ ariaLabel="pages.events.create.go_to_previous_page"
/>
diff --git a/frontend/pages/events/index.vue b/frontend/pages/events/index.vue
index 3846424e1..a70d5c430 100644
--- a/frontend/pages/events/index.vue
+++ b/frontend/pages/events/index.vue
@@ -3,10 +3,10 @@
class="bg-light-layer-0 px-8 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
- {{ $t("pages.events.index.header-title") }}
+ {{ $t("pages.events.index.header_title") }}
{{ $t("pages._global.description") }}* {{ $t("pages._global.create.description") }}*
@@ -71,7 +71,7 @@
id="tagline"
class="bg:light-layer-0 mt-2 w-full rounded-md border border-light-section-div px-4 py-2 dark:border-dark-section-div dark:bg-dark-layer-0"
name="tagline"
- :placeholder="$t('pages.groups.create.tagline-placeholder')"
+ :placeholder="$t('pages.groups.create.tagline_placeholder')"
/>
- {{ $t("pages._global.terms-of-service-pt-1") }}
+ {{ $t("pages._global.terms_of_service_pt_1") }}
{{
- $t("pages._global.terms-of-service-pt-2")
+ $t("pages._global.terms_of_service_pt_2")
}}
.
@@ -98,9 +98,9 @@
type="submit"
:cta="true"
class="flex"
- label="_global.create-group"
+ label="_global.create_group"
fontSize="lg"
- ariaLabel="pages.groups.create.create-group-aria-label"
+ ariaLabel="pages.groups.create.create_group_aria_label"
/>
diff --git a/frontend/pages/groups/index.vue b/frontend/pages/groups/index.vue
index b1395a8ad..5d3b854de 100644
--- a/frontend/pages/groups/index.vue
+++ b/frontend/pages/groups/index.vue
@@ -3,10 +3,10 @@
class="bg-light-layer-0 px-8 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
- {{ $t("pages.groups.index.header-title") }}
+ {{ $t("pages.groups.index.header_title") }}
- {{ $t("pages.help.index.section-1-subheader") }}
+ {{ $t("pages.help.index.section_1_subheader") }}
- {{ $t("pages.help.index.section-1-tagline") }}
+ {{ $t("pages.help.index.section_1_tagline") }}
@@ -34,20 +34,20 @@ const cards: DocsEntry[] = [
{
id: 1,
url: "faq",
- title: "pages.help._global.frequently-asked-questions",
- description: "pages.help.index.faq-description",
+ title: "pages.help._global.frequently_asked_questions",
+ description: "pages.help.index.faq_description",
imgURL: `${BOOTSTRAP_QUESTION_SQUARE_URL}`,
imgDimensions: "h-14 sm:h-16",
- imgAltText: "pages._global.faq-img-alt-text",
+ imgAltText: "pages.help._global.faq_img_alt_text",
},
{
id: 2,
url: "contact",
title: "pages.help.index.contact",
- description: "pages.help.index.contact-description",
+ description: "pages.help.index.contact_description",
imgURL: `${BOOTSTRAP_ENVELOPE_URL}`,
imgDimensions: "h-16 sm:h-20",
- imgAltText: "pages.help._global.contact-img-alt-text",
+ imgAltText: "pages.help._global.contact_img_alt_text",
},
];
diff --git a/frontend/pages/help/press.vue b/frontend/pages/help/press.vue
index 0d834930e..dc17e11d0 100644
--- a/frontend/pages/help/press.vue
+++ b/frontend/pages/help/press.vue
@@ -3,7 +3,7 @@
class="bg-light-layer-0 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
- {{ $t("_global.press") }}
+ {{ $t("pages.help.press.press") }}
This will be a press contact page
diff --git a/frontend/pages/help/status.vue b/frontend/pages/help/status.vue
index 9a6fd39f5..6496fd5b6 100644
--- a/frontend/pages/help/status.vue
+++ b/frontend/pages/help/status.vue
@@ -3,7 +3,7 @@
class="bg-light-layer-0 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
- {{ $t("_global.status") }}
+ {{ $t("pages.help.status.status") }}
This will be a page about the status of the activist server
diff --git a/frontend/pages/index.vue b/frontend/pages/index.vue
index f0585207d..cad867a2f 100644
--- a/frontend/pages/index.vue
+++ b/frontend/pages/index.vue
@@ -10,66 +10,66 @@
>
diff --git a/frontend/pages/legal/index.vue b/frontend/pages/legal/index.vue
index 0de22a043..e90457bb2 100644
--- a/frontend/pages/legal/index.vue
+++ b/frontend/pages/legal/index.vue
@@ -15,12 +15,12 @@
- {{ $t("pages.legal.index.section-1-subheader") }}
+ {{ $t("pages.legal.index.section_1_subheader") }}
- {{ $t("pages.legal.index.section-1-tagline") }}
+ {{ $t("pages.legal.index.section_1_tagline") }}
@@ -34,20 +34,20 @@ const cards: DocsEntry[] = [
{
id: 1,
url: "trademark-policy",
- title: "_global.trademark-policy",
- description: "pages.legal.index.trademark-policy-description",
+ title: "_global.trademark_policy",
+ description: "pages.legal.index.trademark_policy_description",
imgURL: `${BOOTSTRAP_TRADEMARK_URL}`,
imgDimensions: "h-16 sm:h-20",
- imgAltText: "pages.legal._global.trademark-policy-alt-text",
+ imgAltText: "pages.legal._global.trademark_policy_alt_text",
},
{
id: 2,
url: "privacy-policy",
- title: "_global.privacy-policy",
- description: "pages.legal.index.privacy-policy-description",
+ title: "_global.privacy_policy",
+ description: "pages.legal.index.privacy_policy_description",
imgURL: `${BOOTSTRAP_SHIELD_CHECK_URL}`,
imgDimensions: "h-16 sm:h-20",
- imgAltText: "pages.legal._global.privacy-policy-alt-text",
+ imgAltText: "pages.legal._global.privacy_policy_alt_text",
},
];
diff --git a/frontend/pages/legal/privacy-policy.vue b/frontend/pages/legal/privacy-policy.vue
index 988d363c4..098dafd27 100644
--- a/frontend/pages/legal/privacy-policy.vue
+++ b/frontend/pages/legal/privacy-policy.vue
@@ -3,76 +3,76 @@
class="bg-light-layer-0 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
- {{ $t("pages.legal.privacy-policy.title") }}
+ {{ $t("pages.legal.privacy_policy.title") }}
- {{ $t("_global.privacy-policy") }}
+ {{ $t("_global.privacy_policy") }}
- {{ $t("pages.legal.privacy-policy.last-updated") }}
+ {{ $t("pages.legal.privacy_policy.last_updated") }}
- {{ $t("pages.legal.privacy-policy.section-1-paragraph-1") }}
+ {{ $t("pages.legal.privacy_policy.section_1_paragraph_1") }}
- {{ $t("pages.legal.privacy-policy.section-1-paragraph-2") }}
+ {{ $t("pages.legal.privacy_policy.section_1_paragraph_2") }}
- {{ $t("pages.legal.privacy-policy.section-1-paragraph-3") }}
+ {{ $t("pages.legal.privacy_policy.section_1_paragraph_3") }}
- {{ $t("pages.legal.privacy-policy.section-2-subheader") }}
+ {{ $t("pages.legal.privacy_policy.section_2_subheader") }}
- {{ $t("pages.legal.privacy-policy.section-2-paragraph-1") }}
+ {{ $t("pages.legal.privacy_policy.section_2_paragraph_1") }}
- {{ $t("pages.legal.privacy-policy.section-3-subheader") }}
+ {{ $t("pages.legal.privacy_policy.section_3_subheader") }}
- {{ $t("pages.legal.privacy-policy.section-3-paragraph-1") }}
+ {{ $t("pages.legal.privacy_policy.section_3_paragraph_1") }}
- {{ $t("pages.legal.privacy-policy.section-4-subheader") }}
+ {{ $t("pages.legal.privacy_policy.section_4_subheader") }}
- {{ $t("pages.legal.privacy-policy.section-4-paragraph-1") }}
+ {{ $t("pages.legal.privacy_policy.section_4_paragraph_1") }}
- {{ $t("pages.legal.privacy-policy.section-5-subheader") }}
+ {{ $t("pages.legal.privacy_policy.section_5_subheader") }}
- {{ $t("pages.legal.privacy-policy.section-5-paragraph-1") }}
+ {{ $t("pages.legal.privacy_policy.section_5_paragraph_1") }}
- {{ $t("pages.legal.privacy-policy.section-5-paragraph-2") }}
+ {{ $t("pages.legal.privacy_policy.section_5_paragraph_2") }}
- {{ $t("pages.legal.privacy-policy.section-6-subheader") }}
+ {{ $t("pages.legal.privacy_policy.section_6_subheader") }}
- {{ $t("pages.legal.privacy-policy.section-6-paragraph-1") }}
+ {{ $t("pages.legal.privacy_policy.section_6_paragraph_1") }}
- {{ $t("pages.legal.privacy-policy.section-7-subheader") }}
+ {{ $t("pages.legal.privacy_policy.section_7_subheader") }}
- {{ $t("pages.legal.privacy-policy.section-7-paragraph-1") }}
+ {{ $t("pages.legal.privacy_policy.section_7_paragraph_1") }}
diff --git a/frontend/pages/legal/support.vue b/frontend/pages/legal/support.vue
index 153d1e651..d1019f5b5 100644
--- a/frontend/pages/legal/support.vue
+++ b/frontend/pages/legal/support.vue
@@ -3,7 +3,7 @@
class="bg-light-layer-0 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
- {{ $t("_global.legal-support") }}
+ {{ $t("pages.legal.support.legal_support") }}
This will be legal support page with information for people who need help.
diff --git a/frontend/pages/legal/trademark-policy.vue b/frontend/pages/legal/trademark-policy.vue
index 0d7681da9..2d36d3d51 100644
--- a/frontend/pages/legal/trademark-policy.vue
+++ b/frontend/pages/legal/trademark-policy.vue
@@ -3,105 +3,105 @@
class="bg-light-layer-0 text-light-text dark:bg-dark-layer-0 dark:text-dark-text"
>
- {{ $t("pages.legal.trademark-policy.title") }}
+ {{ $t("pages.legal.trademark_policy.title") }}
- {{ $t("_global.trademark-policy") }}
+ {{ $t("_global.trademark_policy") }}
- {{ $t("pages.legal.trademark-policy.last-updated") }}
+ {{ $t("pages.legal.trademark_policy.last_updated") }}
- {{ $t("pages.legal.trademark-policy.section-1-paragraph-1") }}
+ {{ $t("pages.legal.trademark_policy.section_1_paragraph_1") }}
- {{ $t("pages.legal.trademark-policy.section-1-paragraph-2") }}
+ {{ $t("pages.legal.trademark_policy.section_1_paragraph_2") }}
- {{ $t("pages.legal.trademark-policy.section-1-paragraph-3") }}
+ {{ $t("pages.legal.trademark_policy.section_1_paragraph_3") }}
- {{ $t("pages.legal.trademark-policy.section-1-paragraph-4") }}
+ {{ $t("pages.legal.trademark_policy.section_1_paragraph_4") }}
- {{ $t("pages.legal.trademark-policy.section-1-paragraph-5-1") }}
+ {{ $t("pages.legal.trademark_policy.section_1_paragraph_5_1") }}
team@activist.org
.
- {{ $t("pages.legal.trademark-policy.section-1-paragraph-5-2") }}
+ {{ $t("pages.legal.trademark_policy.section_1_paragraph_5_2") }}
- {{ $t("pages.legal.trademark-policy.section-2-subheader") }}
+ {{ $t("pages.legal.trademark_policy.section_2_subheader") }}
- {{ $t("pages.legal.trademark-policy.section-2-list-1-item-1") }}
+ {{ $t("pages.legal.trademark_policy.section_2_list_1_item_1") }}
- {{ $t("pages.legal.trademark-policy.section-2-list-1-item-2") }}
+ {{ $t("pages.legal.trademark_policy.section_2_list_1_item_2") }}
- {{ $t("pages.legal.trademark-policy.section-2-list-1-item-3") }}
+ {{ $t("pages.legal.trademark_policy.section_2_list_1_item_3") }}
- {{ $t("pages.legal.trademark-policy.section-2-list-1-item-4") }}
+ {{ $t("pages.legal.trademark_policy.section_2_list_1_item_4") }}
- {{ $t("pages.legal.trademark-policy.section-2-list-1-item-5") }}
+ {{ $t("pages.legal.trademark_policy.section_2_list_1_item_5") }}
- {{ $t("pages.legal.trademark-policy.section-2-list-1-item-6") }}
+ {{ $t("pages.legal.trademark_policy.section_2_list_1_item_6") }}
- {{ $t("pages.legal.trademark-policy.section-2-list-1-item-7") }}
+ {{ $t("pages.legal.trademark_policy.section_2_list_1_item_7") }}
- {{ $t("pages.legal.trademark-policy.section-2-list-1-item-8") }}
+ {{ $t("pages.legal.trademark_policy.section_2_list_1_item_8") }}
- {{ $t("pages.legal.trademark-policy.section-3-subheader") }}
+ {{ $t("pages.legal.trademark_policy.section_3_subheader") }}
- {{ $t("pages.legal.trademark-policy.section-3-paragraph-1") }}
+ {{ $t("pages.legal.trademark_policy.section_3_paragraph_1") }}
- {{ $t("pages.legal.trademark-policy.section-3-list-1-item-1") }}
+ {{ $t("pages.legal.trademark_policy.section_3_list_1_item_1") }}
- {{ $t("pages.legal.trademark-policy.section-3-list-1-item-2") }}
+ {{ $t("pages.legal.trademark_policy.section_3_list_1_item_2") }}
- {{ $t("pages.legal.trademark-policy.section-4-subheader") }}
+ {{ $t("pages.legal.trademark_policy.section_4_subheader") }}
- {{ $t("pages.legal.trademark-policy.section-4-list-1-item-1") }}
+ {{ $t("pages.legal.trademark_policy.section_4_list_1_item_1") }}
- {{ $t("pages.legal.trademark-policy.section-5-subheader") }}
+ {{ $t("pages.legal.trademark_policy.section_5_subheader") }}
- {{ $t("pages.legal.trademark-policy.section-5-paragraph-1") }}
+ {{ $t("pages.legal.trademark_policy.section_5_paragraph_1") }}
diff --git a/frontend/pages/organizations/[id]/about.vue b/frontend/pages/organizations/[id]/about.vue
index 1b05b426b..ccf6d9e6f 100644
--- a/frontend/pages/organizations/[id]/about.vue
+++ b/frontend/pages/organizations/[id]/about.vue
@@ -12,22 +12,22 @@
class="w-max"
:cta="true"
:linkTo="organization.getInvolvedURL"
- label="components.btn-route-internal.join-organization"
+ label="_global.join_organization"
fontSize="sm"
:rightIcon="IconMap.ARROW_RIGHT"
iconSize="1.45em"
- ariaLabel="components.btn-route-internal.join-organization-aria-label"
+ ariaLabel="_global.join_organization_aria_label"
/>
{{ organization.name }} {{
- $t("_global.affiliates_lower")
+ $t("pages.organizations.affiliates.affiliates_lower")
}}
diff --git a/frontend/pages/organizations/[id]/discussions/index.vue b/frontend/pages/organizations/[id]/discussions/index.vue
index d8e471ef4..02edce3d3 100644
--- a/frontend/pages/organizations/[id]/discussions/index.vue
+++ b/frontend/pages/organizations/[id]/discussions/index.vue
@@ -5,14 +5,14 @@
{{ organization.name }} {{
- $t("_global.discussions_lower")
+ $t("pages._global.discussions_lower")
}}
@@ -21,11 +21,11 @@
class="block w-max"
:cta="true"
linkTo="/"
- label="components.btn-route-internal.new-discussion"
+ label="pages._global.new_discussion"
fontSize="sm"
:leftIcon="IconMap.PLUS"
iconSize="1.35em"
- ariaLabel="components.btn-route-internal.new-discussion-aria-label"
+ ariaLabel="pages._global.new_discussion_aria_label"
/>
diff --git a/frontend/pages/organizations/[id]/events.vue b/frontend/pages/organizations/[id]/events.vue
index 3f0eeb381..4712a1271 100644
--- a/frontend/pages/organizations/[id]/events.vue
+++ b/frontend/pages/organizations/[id]/events.vue
@@ -4,13 +4,17 @@
>
{{ organization.name }} {{ $t("_global.events_lower") }} {{ organization.name }} {{
+ $t("pages.organizations._global.events_lower")
+ }}
@@ -18,11 +22,11 @@
class="w-max"
:cta="true"
linkTo="/"
- label="components._global.new-event"
+ label="_global.new_event"
fontSize="sm"
:leftIcon="IconMap.PLUS"
iconSize="1.35em"
- ariaLabel="components.btn-route-internal.new-event-aria-label"
+ ariaLabel="pages.organizations.events.new_event_aria_label"
/>
diff --git a/frontend/pages/organizations/[id]/faq.vue b/frontend/pages/organizations/[id]/faq.vue
index 67ec6c576..9952a1dc0 100644
--- a/frontend/pages/organizations/[id]/faq.vue
+++ b/frontend/pages/organizations/[id]/faq.vue
@@ -8,18 +8,18 @@
diff --git a/frontend/pages/organizations/[id]/groups/[id]/about.vue b/frontend/pages/organizations/[id]/groups/[id]/about.vue
index 186e25862..81dbfc9c3 100644
--- a/frontend/pages/organizations/[id]/groups/[id]/about.vue
+++ b/frontend/pages/organizations/[id]/groups/[id]/about.vue
@@ -17,22 +17,22 @@
class="w-max"
:cta="true"
:linkTo="group.getInvolvedURL"
- label="components.btn-route-internal.join-group"
+ label="_global.join_group"
fontSize="sm"
:rightIcon="IconMap.ARROW_RIGHT"
iconSize="1.45em"
- ariaLabel="components.btn-route-internal.join-group-aria-label"
+ ariaLabel="_global.join_group_aria_label"
/>
- {{ group.name }} {{ $t("_global.events_lower") }}
+ {{ group.name }} {{
+ $t("pages.organizations._global.events_lower")
+ }}
diff --git a/frontend/pages/organizations/[id]/groups/[id]/faq.vue b/frontend/pages/organizations/[id]/groups/[id]/faq.vue
index 04e52f919..1bb8f69f9 100644
--- a/frontend/pages/organizations/[id]/groups/[id]/faq.vue
+++ b/frontend/pages/organizations/[id]/groups/[id]/faq.vue
@@ -13,20 +13,20 @@
diff --git a/frontend/pages/organizations/[id]/groups/[id]/resources.vue b/frontend/pages/organizations/[id]/groups/[id]/resources.vue
index 726c51fe7..425691e32 100644
--- a/frontend/pages/organizations/[id]/groups/[id]/resources.vue
+++ b/frontend/pages/organizations/[id]/groups/[id]/resources.vue
@@ -13,20 +13,20 @@
diff --git a/frontend/pages/organizations/[id]/groups/index.vue b/frontend/pages/organizations/[id]/groups/index.vue
index fb11c2dc0..ba09fc95c 100644
--- a/frontend/pages/organizations/[id]/groups/index.vue
+++ b/frontend/pages/organizations/[id]/groups/index.vue
@@ -4,13 +4,19 @@
>
{{ organization.name }} {{ $t("_global.groups_lower") }} {{ organization.name }} {{
+ $t("pages.organizations.groups.index.groups_lower")
+ }}
@@ -18,11 +24,11 @@
class="w-max"
:cta="true"
linkTo="/"
- label="components._global.new-group"
+ label="_global.new_group"
fontSize="sm"
:leftIcon="IconMap.PLUS"
iconSize="1.35em"
- ariaLabel="components.btn-route-internal.new-group-aria-label"
+ ariaLabel="pages.organizations.groups.index.new_group_aria_label"
/>
diff --git a/frontend/pages/organizations/[id]/index.vue b/frontend/pages/organizations/[id]/index.vue
index b6df65cc5..d87b21b93 100644
--- a/frontend/pages/organizations/[id]/index.vue
+++ b/frontend/pages/organizations/[id]/index.vue
@@ -10,7 +10,7 @@