diff --git a/packages/client/extractedTranslations/en/admin.json b/packages/client/extractedTranslations/en/admin.json
deleted file mode 100644
index d637c9a5d..000000000
--- a/packages/client/extractedTranslations/en/admin.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "Missing form element type {{typeName}}": "Missing form element type {{typeName}}",
- "Number must be equal to or greater than ": "Number must be equal to or greater than ",
- "Number must be equal to or less than ": "Number must be equal to or less than "
-}
diff --git a/packages/client/extractedTranslations/en/admin:offline.json b/packages/client/extractedTranslations/en/admin:offline.json
deleted file mode 100644
index 25fe20287..000000000
--- a/packages/client/extractedTranslations/en/admin:offline.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "Offline Tile Simulator Active": "Offline Tile Simulator Active"
-}
diff --git a/packages/client/extractedTranslations/en/admin:superuser.json b/packages/client/extractedTranslations/en/admin:superuser.json
deleted file mode 100644
index 7bcf9ba1f..000000000
--- a/packages/client/extractedTranslations/en/admin:superuser.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "Publish as template": "Publish as template",
- "Superuser Settings": "Superuser Settings",
- "Template name": "Template name",
- "This is the label SeaSketch admins will see when choosing among templates. For ease of maintenance, it's best to publish templates from a single project like<1>1>. Sharing a template won't disable it in the project so... don't let things get weird!": "This is the label SeaSketch admins will see when choosing among templates. For ease of maintenance, it's best to publish templates from a single project like<1>1>. Sharing a template won't disable it in the project so... don't let things get weird!"
-}
diff --git a/packages/client/extractedTranslations/en/admin:surveys.json b/packages/client/extractedTranslations/en/admin:surveys.json
deleted file mode 100644
index 218ae7932..000000000
--- a/packages/client/extractedTranslations/en/admin:surveys.json
+++ /dev/null
@@ -1,152 +0,0 @@
-{
- ", agreed": ", agreed",
- "Add": "Add",
- "Add element": "Add element",
- "Add to sector questions...": "Add to sector questions...",
- "Add to spatial input...": "Add to spatial input...",
- "Add to survey...": "Add to survey...",
- "Agree button label": "Agree button label",
- "Agree/Disagree": "Agree/Disagree",
- "Agreed to": "Agreed to",
- "Appearance": "Appearance",
- "Are you sure you want to delete this element?": "Are you sure you want to delete this element?",
- "Are you sure you want to remove this map?": "Are you sure you want to remove this map?",
- "Background Image": "Background Image",
- "Background color": "Background color",
- "Background image": "Background image",
- "Base Settings": "Base Settings",
- "Basemaps": "Basemaps",
- "Boolean input": "Boolean input",
- "Changing appearance settings will impact all following pages until another customized page appears.": "Changing appearance settings will impact all following pages until another customized page appears.",
- "Choose basemaps": "Choose basemaps",
- "Choose image...": "Choose image...",
- "Choose languages in addition to English which you would like to include. You will need to provide translations for the content of your survey like questions and input labels.": "Choose languages in addition to English which you would like to include. You will need to provide translations for the content of your survey like questions and input labels.",
- "Choose values for multiple items": "Choose values for multiple items",
- "Clear style": "Clear style",
- "Clicked": "Clicked",
- "Collect spatial features with attributes": "Collect spatial features with attributes",
- "Compact": "Compact",
- "Consent": "Consent",
- "Customize Appearance": "Customize Appearance",
- "Data sharing agreement": "Data sharing agreement",
- "Delete Element": "Delete Element",
- "Demographic Choice": "Demographic Choice",
- "Disagree button label": "Disagree button label",
- "Discard": "Discard",
- "Display based on sector": "Display based on sector",
- "Document Label": "Document Label",
- "Done": "Done",
- "Drag and drop new documents here to <2>upload a new version2>. SeaSketch will record the exact version each user agrees to.": "Drag and drop new documents here to <2>upload a new version2>. SeaSketch will record the exact version each user agrees to.",
- "Drag and drop to sort.": "Drag and drop to sort.",
- "Drag and drop your full data use agreement here.": "Drag and drop your full data use agreement here.",
- "Each spatial input element is exported as a collection.": "Each spatial input element is exported as a collection.",
- "Edit": "Edit",
- "Edit Visibility Logic": "Edit Visibility Logic",
- "Enable customized appearance to adjust map settings": "Enable customized appearance to adjust map settings",
- "Export": "Export",
- "Export ID": "Export ID",
- "Export Responses": "Export Responses",
- "FeatureNameGenerationDescription": "A name will be generated for each new feature (e.g. Location 4) which can be changed by the user. The prefix will be joined with a localized number.",
- "Feedback while saving": "Feedback while saving",
- "First listed will be the default.": "First listed will be the default.",
- "For individuals or groups": "For individuals or groups",
- "Form Elements": "Form Elements",
- "Generated Name Prefix": "Generated Name Prefix",
- "Geometry Type": "Geometry Type",
- "Geometry type cannot be changed after responses are collected": "Geometry type cannot be changed after responses are collected",
- "If a response is created with facilitation enabled, the user will be given the option to specify both a respondent and facilitator name. Facilitation can be enabled from dropdown button on the Welcome page.": "If a response is created with facilitation enabled, the user will be given the option to specify both a respondent and facilitator name. Facilitation can be enabled from dropdown button on the Welcome page.",
- "If enabled, this field will only be presented as an option for shapes representing the following sectors.": "If enabled, this field will only be presented as an option for shapes representing the following sectors.",
- "If no basemaps are specified, your project's already configured maps will be used": "If no basemaps are specified, your project's already configured maps will be used",
- "Include Practice Responses": "Include Practice Responses",
- "Input type": "Input type",
- "Invalid value": "Invalid value",
- "Layout": "Layout",
- "Link to project": "Link to project",
- "List options as <2>label,value 2>each on a new line. Use quotes to escape commas. Values are not required but will keep data consistent if text changes are needed. Copying data from Google Sheets can help manage longer lists.": "List options as <2>label,value 2>each on a new line. Use quotes to escape commas. Values are not required but will keep data consistent if text changes are needed. Copying data from Google Sheets can help manage longer lists.",
- "List sector options below to collect data related to different ocean uses. If no sectors are provided then the sectors question will be skipped and only a single set of shapes will be collected.": "List sector options below to collect data related to different ocean uses. If no sectors are provided then the sectors question will be skipped and only a single set of shapes will be collected.",
- "Location Name": "Location Name",
- "Longer text input": "Longer text input",
- "Map-based": "Map-based",
- "Matrix": "Matrix",
- "Maximum": "Maximum",
- "Message shown at end of survey.": "Message shown at end of survey.",
- "Most response data is available in a single CSV file.": "Most response data is available in a single CSV file.",
- "Move to": "Move to",
- "Multiple Locations": "Multiple Locations",
- "Name": "Name",
- "Name for a spatial feature": "Name for a spatial feature",
- "Name of respondent": "Name of respondent",
- "New basemap": "New basemap",
- "Next": "Next",
- "No": "No",
- "No options specified": "No options specified",
- "No related elements.": "No related elements.",
- "No results for {{debouncedQuery}}": "No results for {{debouncedQuery}}",
- "None": "None",
- "Note that admins will always be given the option to submit another response.": "Note that admins will always be given the option to submit another response.",
- "Note that on <1>mobile1> phones and other small devices, the top-image layout will be used if left or right image layout is selected. For map-based layouts affordances will be provided for the user to switch between the map and textual content.": "Note that on <1>mobile1> phones and other small devices, the top-image layout will be used if left or right image layout is selected. For map-based layouts affordances will be provided for the user to switch between the map and textual content.",
- "NumLocations": "{{count}} locations",
- "NumLocations_plural": "NumLocations_plural",
- "Numeric saprange": "Numeric saprange",
- "Options": "Options",
- "Participant Count": "Participant Count",
- "Placeholder": "Placeholder",
- "Preview Survey": "Preview Survey",
- "Prioritize use by location": "Prioritize use by location",
- "Project basemaps": "Project basemaps",
- "Prompt for multiple responses": "Prompt for multiple responses",
- "Removing style settings will mean that this page will share the same appearance as previous pages.": "Removing style settings will mean that this page will share the same appearance as previous pages.",
- "Require document click": "Require document click",
- "Required": "Required",
- "Respond Again Button Text": "Respond Again Button Text",
- "Response Data": "Response Data",
- "SAPRange": "SAPRange",
- "SaveScreen": "SaveScreen",
- "Search Unsplash for Photos": "Search Unsplash for Photos",
- "Secondary color": "Secondary color",
- "Sector Logic": "Sector Logic",
- "Sector Options": "Sector Options",
- "Sector-Specific Attributes": "Sector-Specific Attributes",
- "Sector-Specific Questions": "Sector-Specific Questions",
- "Sector-Specific Visibility": "Sector-Specific Visibility",
- "Select an input element to skip ahead based on answers.": "Select an input element to skip ahead based on answers.",
- "Select from project maps": "Select from project maps",
- "Set Starting Camera": "Set Starting Camera",
- "Setting an export id will give a stable column name when exporting your results": "Setting an export id will give a stable column name when exporting your results",
- "Share buttons": "Share buttons",
- "Show Facilitation Option": "Show Facilitation Option",
- "Show Progress": "Show Progress",
- "Signature": "Signature",
- "Signature placeholder": "Signature placeholder",
- "Skip Logic": "Skip Logic",
- "Spatial Access Priority": "Spatial Access Priority",
- "Spatial Attributes": "Spatial Attributes",
- "Spatial Data": "Spatial Data",
- "Starting Bounds": "Starting Bounds",
- "Supported Languages": "Supported Languages",
- "Survey basemaps": "Survey basemaps",
- "Text Area": "Text Area",
- "Text color": "Text color",
- "Thank You": "Thank You",
- "The map will be adjusted to start showing the entire region of interest": "The map will be adjusted to start showing the entire region of interest",
- "This action cannot be undone.": "This action cannot be undone.",
- "This content will only appear when a facilitator is filling out a response for someone else. If the facilitator is signed-in, it will be populated by their profile.": "This content will only appear when a facilitator is filling out a response for someone else. If the facilitator is signed-in, it will be populated by their profile.",
- "This element has multiple stages": "This element has multiple stages",
- "This element will render with the appearance settings of a previous element.": "This element will render with the appearance settings of a previous element.",
- "This input will be populated with the user's login information if available": "This input will be populated with the user's login information if available",
- "This question will only be shown for the following sectors": "This question will only be shown for the following sectors",
- "To support group responses": "To support group responses",
- "To support multiple languages, each option must specify a label and a value for all languages!": "To support multiple languages, each option must specify a label and a value for all languages!",
- "Try Kelp, Coral Reef, Atoll, Santa Barbara Ocean...": "Try Kelp, Coral Reef, Atoll, Santa Barbara Ocean...",
- "Uploading document...": "Uploading document...",
- "Use the map on the left to draw a new extent, or <2>cancel2>": "Use the map on the left to draw a new extent, or <2>cancel2>",
- "Values do not match between different translations!": "Values do not match between different translations!",
- "Yes": "Yes",
- "Yes/No": "Yes/No",
- "add": "add",
- "auto": "auto",
- "dark": "dark",
- "edit": "edit",
- "light": "light",
- "skipped": "skipped"
-}
diff --git a/packages/client/extractedTranslations/en/common.json b/packages/client/extractedTranslations/en/common.json
deleted file mode 100644
index 5c5690cd2..000000000
--- a/packages/client/extractedTranslations/en/common.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "Cancel": "Cancel",
- "OK": "OK",
- "Submit": "Submit",
- "dismiss": "dismiss"
-}
diff --git a/packages/client/extractedTranslations/en/invites.json b/packages/client/extractedTranslations/en/invites.json
deleted file mode 100644
index ab44f3a23..000000000
--- a/packages/client/extractedTranslations/en/invites.json
+++ /dev/null
@@ -1,17 +0,0 @@
-{
- "Accept as": "Accept as {{email}}",
- "An account with this email address already exists.": "An account with this email address already exists.",
- "Confirming invite": "Confirming invite",
- "Contact {{supportEmail}} to request a new invitation.": "Contact {{supportEmail}} to request a new invitation.",
- "Create an Account": "Create an Account",
- "Logout and sign in as ": "Logout and sign in as ",
- "Sign In": "Sign In",
- "This invitation has already been accepted.<1> Proceed to the project 1> or <5>contact support5>if you believe this to be an error.": "This invitation has already been accepted.<1> Proceed to the project 1> or <5>contact support5>if you believe this to be an error.",
- "This invitation was originally sent to <2>2>.": "This invitation was originally sent to <2>2>.",
- "Use another account": "Use another account",
- "Verifying invitation code": "Verifying invitation code",
- "Welcome!": "Welcome!",
- "Welcome, !": "Welcome, !",
- "You have been invited to participate in a SeaSketch project.": "You have been invited to participate in a SeaSketch project.",
- "Your invitation to this project has expired.": "Your invitation to this project has expired."
-}
diff --git a/packages/client/extractedTranslations/en/map.json b/packages/client/extractedTranslations/en/map.json
deleted file mode 100644
index 1f7161d69..000000000
--- a/packages/client/extractedTranslations/en/map.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "Map bookmark shown": "Map bookmark shown",
- "missingLayerCount": "",
- "missingLayerCount_plural": "missingLayerCount_plural",
- "undo": "undo",
- "view details": "view details"
-}
diff --git a/packages/client/extractedTranslations/en/offline.json b/packages/client/extractedTranslations/en/offline.json
deleted file mode 100644
index 95ac76c04..000000000
--- a/packages/client/extractedTranslations/en/offline.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "Download responses": "Download responses",
- "Once online, you can resubmit from the this page, the begining of the survey, or from the SeaSketch homepage.": "Once online, you can resubmit from the this page, the begining of the survey, or from the SeaSketch homepage.",
- "Submit them now": "Submit them now",
- "These responses have been saved to your device but will need to be resubmitted to the SeaSketch server once you are back online. You can continue to collect additional responses until then.": "These responses have been saved to your device but will need to be resubmitted to the SeaSketch server once you are back online. You can continue to collect additional responses until then.",
- "WelcomeOfflineResponseCount": "You have collected {{count}} responses while offline.",
- "WelcomeOfflineResponseCountWhenOffline": "You are offline and have collected {{count}} responses so far.",
- "WelcomeOfflineResponseCountWhenOffline_plural": "WelcomeOfflineResponseCountWhenOffline_plural",
- "WelcomeOfflineResponseCount_plural": "WelcomeOfflineResponseCount_plural",
- "offlineResponseCount": "{{count}} offline responses collected",
- "offlineResponseCount_plural": "offlineResponseCount_plural"
-}
diff --git a/packages/client/extractedTranslations/en/projectLanding.json b/packages/client/extractedTranslations/en/projectLanding.json
deleted file mode 100644
index 7ff53a916..000000000
--- a/packages/client/extractedTranslations/en/projectLanding.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "<0>0> can only be accessed by project administrators.": "<0>0> can only be accessed by project administrators.",
- "<0>0> can only be accessed with an invitation. Sign in or create a SeaSketch account to request access.": "<0>0> can only be accessed with an invitation. Sign in or create a SeaSketch account to request access.",
- "<0>0> can only be accessed with an invitation. To request access, first fill out and share your profile with this project.": "<0>0> can only be accessed with an invitation. To request access, first fill out and share your profile with this project.",
- "Access to <2>2> is limited to project administrators. You may contact the site support email to request access.": "Access to <2>2> is limited to project administrators. You may contact the site support email to request access.",
- "Access to this area of <2>2> is limited to project administrators.": "Access to this area of <2>2> is limited to project administrators.",
- "Admins Only": "Admins Only",
- "Cancel": "Cancel",
- "Consent to share this personal information": "Consent to share this personal information",
- "Contact ": "Contact ",
- "Contact support": "Contact support",
- "Create an account": "Create an account",
- "Email Not Verified": "Email Not Verified",
- "Error Loading Project": "Error Loading Project",
- "I understand that this profile will be shared with project admins and accompany my posts to the discussion forums.": "I understand that this profile will be shared with project admins and accompany my posts to the discussion forums.",
- "Information in the profile will be included with your request": "Information in the profile will be included with your request",
- "Privacy Policy": "Privacy Policy",
- "Private Project": "Private Project",
- "Profile sharing is required to access private projects so that administrators know who is requesting access.\n\nYour profile will only be shared more broadly if you post in the forums, and you can turn off profile sharing at any time while losing access to these features.": "Profile sharing is required to access private projects so that administrators know who is requesting access.\n\nYour profile will only be shared more broadly if you post in the forums, and you can turn off profile sharing at any time while losing access to these features.",
- "Project Not Found": "Project Not Found",
- "Request Awaiting Approval": "Request Awaiting Approval",
- "Resend verification email": "Resend verification email",
- "SeaSketch does not have a project located at this url. Try browsing our <2>list of projects2> to find what you are looking for.": "SeaSketch does not have a project located at this url. Try browsing our <2>list of projects2> to find what you are looking for.",
- "Send Request": "Send Request",
- "Share Profile and Request Access": "Share Profile and Request Access",
- "Sign in": "Sign in",
- "The API server did not return any public details for this project.": "The API server did not return any public details for this project.",
- "The API server returned null data for this project": "The API server returned null data for this project",
- "User Profile": "User Profile",
- "Verification email sent. Check your inbox.": "Verification email sent. Check your inbox.",
- "You are approved to access <2>2> but first you must verify your email address. This is to protect your account and sensitive data within the project. Check your email, including your spam folder, for a verification link from SeaSketch.": "You are approved to access <2>2> but first you must verify your email address. This is to protect your account and sensitive data within the project. Check your email, including your spam folder, for a verification link from SeaSketch.",
- "Your Request Has Been Sent": "Your Request Has Been Sent",
- "Your request for access to <2>2> has been received but has not yet been approved. You may wish to follow up with the project's support email.": "Your request for access to <2>2> has been received but has not yet been approved. You may wish to follow up with the project's support email."
-}
diff --git a/packages/client/extractedTranslations/en/sketching.json b/packages/client/extractedTranslations/en/sketching.json
deleted file mode 100644
index 7ed6a7560..000000000
--- a/packages/client/extractedTranslations/en/sketching.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "Name": "Name"
-}
diff --git a/packages/client/extractedTranslations/en/surveys.json b/packages/client/extractedTranslations/en/surveys.json
deleted file mode 100644
index af5224a49..000000000
--- a/packages/client/extractedTranslations/en/surveys.json
+++ /dev/null
@@ -1,75 +0,0 @@
-{
- "Add": "Add",
- "Agree to terms": "Agree to terms",
- "Are you sure you no longer want to share data with this project? Your previous answers will be lost.": "Are you sure you no longer want to share data with this project? Your previous answers will be lost.",
- "Are you sure you want to delete this shape?": "Are you sure you want to delete this shape?",
- "Average": "Average",
- "Back to Homepage": "Back to Homepage",
- "Back to List": "Back to List",
- "Basemap": "Basemap",
- "Begin": "Begin",
- "Cancel": "Cancel",
- "Close": "Close",
- "Complete Submission": "Complete Submission",
- "Component is misconfigured. Document url required.": "Component is misconfigured. Document url required.",
- "ContactForAssistance": "Contact<1>support@seasketch.org1>for assistance.",
- "Continue Practice Mode": "Continue Practice Mode",
- "Copied URL": "Copied URL",
- "Count My Response": "Count My Response",
- "Data Sharing Agreement": "Data Sharing Agreement",
- "Delete": "Delete",
- "Do not agree": "Do not agree",
- "Done": "Done",
- "Edit on Map": "Edit on Map",
- "Enable Practice Mode": "Enable Practice Mode",
- "Error saving response": "Error saving response",
- "Expand Map": "Expand Map",
- "Finish Sector": "Finish Sector",
- "Finish drawing your shape first. Afterwards you will be able to use the measure tool.": "Finish drawing your shape first. Afterwards you will be able to use the measure tool.",
- "Focus on location": "Focus on location",
- "Focus on shapes": "Focus on shapes",
- "High": "High",
- "If required, users must click to open the attached document before agreeing": "If required, users must click to open the attached document before agreeing",
- "Low": "Low",
- "Measure": "Measure",
- "New Shape": "New Shape",
- "Next": "Next",
- "Next Question": "Next Question",
- "No": "No",
- "Number required": "Number required",
- "OfflineInstructions": "We cannot submit your response until you are connected to the internet. Please check your connection. You may safely refresh this page.",
- "Optional Layers": "Optional Layers",
- "Photo by <2>{{name}}2> on <6>Unsplash6>": "Photo by <2>{{name}}2> on <6>Unsplash6>",
- "Please complete your shape on the map": "Please complete your shape on the map",
- "Please enter your full name in the signature field": "Please enter your full name in the signature field",
- "Please fill in required fields": "Please fill in required fields",
- "Please fix problems with your shape first.": "Please fix problems with your shape first.",
- "Please open the attached terms before agreeing": "Please open the attached terms before agreeing",
- "Practice Mode": "Practice Mode",
- "Practice mode saves your responses seperately so that they are not counted in the survey results.": "Practice mode saves your responses seperately so that they are not counted in the survey results.",
- "Previous Question": "Previous Question",
- "RepeatSubmission": "Submit Again",
- "Required": "Required",
- "Required field": "Required field",
- "Reset Survey": "Reset Survey",
- "Reset view": "Reset view",
- "ResetSurvey": "Resetting will delete all of your previously entered data so that you may start the survey again in a blank state. This action cannot be undone.",
- "Return to ": "Return to ",
- "Return to Survey": "Return to Survey",
- "Return to project": "Return to project",
- "Save": "Save",
- "Show scale bar": "Show scale bar",
- "Skip Question": "Skip Question",
- "Skip to next question": "Skip to next question",
- "Submitting Your Response": "Submitting Your Response",
- "Subtract": "Subtract",
- "Survey not found": "Survey not found",
- "This survey either does not exist or your account does not have access to it. Surveys marked as draft require special permission to access.": "This survey either does not exist or your account does not have access to it. Surveys marked as draft require special permission to access.",
- "This will delete your entire shape. Are you sure?": "This will delete your entire shape. Are you sure?",
- "Total": "Total",
- "UnsubmittedResponse": "Your response is safe on this device, but will need to be submitted to the server before being counted.",
- "View Map": "View Map",
- "Yes": "Yes",
- "You Are Offline": "You Are Offline",
- "none": "none"
-}
diff --git a/packages/client/src/lang/en/admin.json b/packages/client/src/lang/en/admin.json
index 02d536117..15f0f25e0 100644
--- a/packages/client/src/lang/en/admin.json
+++ b/packages/client/src/lang/en/admin.json
@@ -21,12 +21,9 @@
"Affiliations and Bio": "Affiliations and Bio",
"Always on": "Always on",
"Amount of spatial data that can be uploaded to this project. We limit this amount initially to prevent abuse and to identify important projects.": "Amount of spatial data that can be uploaded to this project. We limit this amount initially to prevent abuse and to identify important projects.",
- "Analyze layer performance details": "Analyze layer performance details",
"Anyone can visit the project and participate. Can only be enabled for <1>listed1> projects.": "Anyone can visit the project and participate. Can only be enabled for <1>listed1> projects.",
"Approve": "Approve",
"Approve access": "Approve access",
- "ArcGIS Dynamic Map Service": "ArcGIS Dynamic Map Service",
- "ArcGIS Vector Feature Layer": "ArcGIS Vector Feature Layer",
"Are you sure you want to delete this group?": "Are you sure you want to delete this group?",
"Are you sure you want to delete this layer?": "Are you sure you want to delete this layer?",
"Are you sure you want to delete this map?": "Are you sure you want to delete this map?",
@@ -36,7 +33,6 @@
"Are you sure you want to email all {{count}} draft invites?_plural": "Are you sure you want to email all {{count}} draft invites?_plural",
"Assign Administrator Access": "Assign Administrator Access",
"Assign Group Membership": "Assign Group Membership",
- "Attribution": "Attribution",
"Back to Project": "Back to Project",
"Ban": "Ban",
"Ban from Forums": "Ban from Forums",
@@ -48,7 +44,6 @@
"Basic Settings": "Basic Settings",
"Block user access": "Block user access",
"Bold": "Bold",
- "Bounds": "Bounds",
"Brief description below the name ": "Brief description below the name ",
"Browse": "Browse",
"By Group": "By Group",
@@ -76,7 +71,7 @@
"Data Hosting Quota": "Data Hosting Quota",
"Data Layers": "Data Layers",
"Data Storage Location": "Data Storage Location",
- "Data download cannot be enabled because the original is not available. SeaSketch only recently began storing original uploaded files, so older data layers may need to be uploaded again to support this capability.": "Data download cannot be enabled because the original is not available. SeaSketch only recently began storing original uploaded files, so older data layers may need to be uploaded again to support this capability.",
+ "Data download cannot be enabled because the original is not available. Older data layers may need to be uploaded again to support this capability.": "Data download cannot be enabled because the original is not available. Older data layers may need to be uploaded again to support this capability.",
"Data layer administration requires at least a tablet-sized screen.": "Data layer administration requires at least a tablet-sized screen.",
"Default": "Default",
"Default off": "Default off",
@@ -129,11 +124,8 @@
"Errors": "Errors",
"Failed to load overlay settings.": "Failed to load overlay settings.",
"Failed to render component": "Failed to render component",
- "Feature Count": "Feature Count",
"Featured Project": "Featured Project",
"Featured projects will be displayed more prominently on project listing pages.": "Featured projects will be displayed more prominently on project listing pages.",
- "Fetch Strategy": "Fetch Strategy",
- "File Size": "File Size",
"File Upload": "File Upload",
"Folder Name": "Folder Name",
"Folder can be expanded and layers within can be toggled individually.": "Folder can be expanded and layers within can be toggled individually.",
@@ -144,9 +136,6 @@
"From Mapbox Account": "From Mapbox Account",
"Full Name": "Full Name",
"Full name": "Full name",
- "GeoJSON data hosted on SeaSketch": "GeoJSON data hosted on SeaSketch",
- "Geometry Type": "Geometry Type",
- "Geoprocessing Reference ID": "Geoprocessing Reference ID",
"Groups of mutually exclusive layers can be chosen from a dropdown menu": "Groups of mutually exclusive layers can be chosen from a dropdown menu",
"Groups of mutually exclusive layers can be chosen from a list of radio options": "Groups of mutually exclusive layers can be chosen from a list of radio options",
"Hidden Content": "Hidden Content",
@@ -155,15 +144,12 @@
"Hide Overlay Layers": "Hide Overlay Layers",
"Hide Sketching Tools": "Hide Sketching Tools",
"If enabled, project administrators will have access to experimental offline survey functionality. Otherwise these options will be hidden.": "If enabled, project administrators will have access to experimental offline survey functionality. Otherwise these options will be hidden.",
- "If enabled, users will be able to download GeoJSON data from the source service.": "If enabled, users will be able to download GeoJSON data from the source service.",
"If enabled, users will be able to download the original data file uploaded to SeaSketch.": "If enabled, users will be able to download the original data file uploaded to SeaSketch.",
"If enabled, users will have the ability to download raw feature data as a GeoJSON file. SeaSketch will extract vector features from the service using the <2>ArcGIS REST API query endpoint2>. Cached data may be up to 3 hours old. As an admin, you can always <5>click here to download5>.": "If enabled, users will have the ability to download raw feature data as a GeoJSON file. SeaSketch will extract vector features from the service using the <2>ArcGIS REST API query endpoint2>. Cached data may be up to 3 hours old. As an admin, you can always <5>click here to download5>.",
- "If set, a short attribution string will be shown at the bottom of the map.": "If set, a short attribution string will be shown at the bottom of the map.",
"If set, a tooltip will appear as a preview before the user clicks on a feature to show the full sidebar.": "If set, a tooltip will appear as a preview before the user clicks on a feature to show the full sidebar.",
"If you are not using all the features of SeaSketch, as in the case of a data portal, you can hide these features from the homepage sidebar.": "If you are not using all the features of SeaSketch, as in the case of a data portal, you can hide these features from the homepage sidebar.",
"Image Format": "Image Format",
"Image Service": "Image Service",
- "Imagery data looks best using <1>jpg1>, for all others <3>png3> is usually the right choice.": "Imagery data looks best using <1>jpg1>, for all others <3>png3> is usually the right choice.",
"Imagery data looks best using <1>jpg1>, for others <4>png4> is a good choice.": "Imagery data looks best using <1>jpg1>, for others <4>png4> is a good choice.",
"Import Image Service": "Import Image Service",
"Import Service": "Import Service",
@@ -173,7 +159,6 @@
"Italics": "Italics",
"Labels Layer": "Labels Layer",
"Last Updated": "Last Updated",
- "Leave blank to display attribution dynamically from ArcGIS service, or provide attribution to override the service metadata.": "Leave blank to display attribution dynamically from ArcGIS service, or provide attribution to override the service metadata.",
"Level 1 Heading": "Level 1 Heading",
"Level 2 Heading": "Level 2 Heading",
"Level 3 Heading": "Level 3 Heading",
@@ -190,13 +175,13 @@
"MapContext is not ready": "MapContext is not ready",
"Mapbox Access Tokens": "Mapbox Access Tokens",
"Menus for multiple-selections not yet supported": "Menus for multiple-selections not yet supported",
- "Min, Max Zoom": "Min, Max Zoom",
"Missing form element type {{typeName}}": "Missing form element type {{typeName}}",
"Name": "Name",
"Name is required and must be less than 33 characters": "Name is required and must be less than 33 characters",
"Name this new group": "Name this new group",
"Needs approval": "Needs approval",
"Never": "Never",
+ "New": "New",
"New Folder": "New Folder",
"New Map": "New Map",
"New Optional Layer": "New Optional Layer",
@@ -221,9 +206,6 @@
"Optional Secret Key": "Optional Secret Key",
"Optionally provide the recipient's name.": "Optionally provide the recipient's name.",
"Options": "Options",
- "Original Source": "Original Source",
- "Overlay Title": "Overlay Title",
- "Overlays can be assigned a stable id for reference by geoprocessing clients. You can also refer to this overlay using the following ID.": "Overlays can be assigned a stable id for reference by geoprocessing clients. You can also refer to this overlay using the following ID.",
"Paragraph": "Paragraph",
"Participation Status": "Participation Status",
"Permanent Project URL": "Permanent Project URL",
@@ -249,8 +231,6 @@
"Recipient is awaiting approval of their project access request. (This should not happen for invite recipients! Please contact support@seasketch.org)": "Recipient is awaiting approval of their project access request. (This should not happen for invite recipients! Please contact support@seasketch.org)",
"Recipient unsubscribed from all SeaSketch emails": "Recipient unsubscribed from all SeaSketch emails",
"Redraw Bounds": "Redraw Bounds",
- "Remote GeoJSON data": "Remote GeoJSON data",
- "Remote Vector Tileset": "Remote Vector Tileset",
"Rename Group": "Rename Group",
"Render this layer above the basemap entirely.": "Render this layer above the basemap entirely.",
"Request higher resolution images when the user has a \"Retina\" or 4k display. Maps will be much more detailed, but it demands more of the data server.": "Request higher resolution images when the user has a \"Retina\" or 4k display. Maps will be much more detailed, but it demands more of the data server.",
@@ -258,7 +238,6 @@
"Save and Close": "Save and Close",
"Saving map bookmark": "Saving map bookmark",
"SeaSketch Developer Settings": "SeaSketch Developer Settings",
- "SeaSketch determines an appropriate strategy for retrieving vector data at import time.
<2>GeoJSON2> requests offer best performance when datasets can be downloaded in a single request. <5>Tiled5> requests can be used for datasets that are too large or contain > 2000 features. <8>Auto8> is not recommended other than for debugging.
<11><0>0>11>": "SeaSketch determines an appropriate strategy for retrieving vector data at import time.
<2>GeoJSON2> requests offer best performance when datasets can be downloaded in a single request. <5>Tiled5> requests can be used for datasets that are too large or contain > 2000 features. <8>Auto8> is not recommended other than for debugging.
<11><0>0>11>",
"SeaSketch will detect a user's language from browser and system settings and show content in that language if supported. Users can also select from supported languages in the sidebar. At this time the administrative interface is only available in English.": "SeaSketch will detect a user's language from browser and system settings and show content in that language if supported. Users can also select from supported languages in the sidebar. At this time the administrative interface is only available in English.",
"Search": "Search",
"Select All": "Select All",
@@ -286,9 +265,6 @@
"Simple switch to toggle a set of optional layers": "Simple switch to toggle a set of optional layers",
"Single Invite": "Single Invite",
"Sketches": "Sketches",
- "Source Location": "Source Location",
- "Source Server": "Source Server",
- "Source Type": "Source Type",
"Style location": "Style location",
"Submit": "Submit",
"Submit Changes": "Submit Changes",
@@ -307,24 +283,19 @@
"This user access request has yet to be approved.": "This user access request has yet to be approved.",
"This user's access request was approved by
on ": "This user's access request was approved by
on ",
"This user's access request was denied by
on ": "This user's access request was denied by
on ",
- "Title": "Title",
"Token Expires": "Token Expires",
"Token not yet assigned": "Token not yet assigned",
"Tooltip": "Tooltip",
"Tooltip (optional)": "Tooltip (optional)",
- "URL Template": "URL Template",
"Unlike the email in a user's public profile, the <2>canonical email2> is determined during registration and SeaSketch will verify ownership before assigning any permissions. Reference this identity before assigning admin or group access.": "Unlike the email in a user's public profile, the <2>canonical email2> is determined during registration and SeaSketch will verify ownership before assigning any permissions. Reference this identity before assigning admin or group access.",
"Unshared sketches visible on the map": "Unshared sketches visible on the map",
"Upload": "Upload",
- "Uploaded by": "Uploaded by",
"Uploading": "Uploading",
"User groups can be used to grant permission to access certain layers, forums, or sketching tools.": "User groups can be used to grant permission to access certain layers, forums, or sketching tools.",
"User profiles are entered and maintained by the user. This information is shared along with any forum posts the user makes.": "User profiles are entered and maintained by the user. This information is shared along with any forum posts the user makes.",
"Users can turn off 3d terrain if desired": "Users can turn off 3d terrain if desired",
"Users can turn on 3d terrain if desired": "Users can turn on 3d terrain if desired",
"Using dynamic service metadata will discard any changes you have made to the metadata. Are you sure you want to proceed?": "Using dynamic service metadata will discard any changes you have made to the metadata. Are you sure you want to proceed?",
- "Vector layers can be styled using <2>MapBox GL Style Layers2>. Don't specify a <4>source4> or <6>id6> property on your layers, those will be managed for you by SeaSketch. Press <10>Control+Space10> to autocomplete string values and property names, and hover over properties to see documentation.": "Vector layers can be styled using <2>MapBox GL Style Layers2>. Don't specify a <4>source4> or <6>id6> property on your layers, those will be managed for you by SeaSketch. Press <10>Control+Space10> to autocomplete string values and property names, and hover over properties to see documentation.",
- "Vector tiles hosted on SeaSketch": "Vector tiles hosted on SeaSketch",
"We recommend a square PNG logo with transparent background of at least <1>128x1281> pixels.": "We recommend a square PNG logo with transparent background of at least <1>128x1281> pixels.",
"When enabled, this project will be listed on the SeaSketch <2>projects page2> and accessible to search engines. We recommend enabling this setting even for private projects so that your users can find the project easily and request access if necessary.": "When enabled, this project will be listed on the SeaSketch <2>projects page2> and accessible to search engines. We recommend enabling this setting even for private projects so that your users can find the project easily and request access if necessary.",
"While a default key is available to get started, we require production projects to provide a <2>public access token2> which will be used when loading maps. Use of MapBox via SeaSketch may incur fees, though most projects should fall under their <6>generous free tier6>.": "While a default key is available to get started, we require production projects to provide a <2>public access token2> which will be used when loading maps. Use of MapBox via SeaSketch may incur fees, though most projects should fall under their <6>generous free tier6>.",
diff --git a/packages/client/src/lang/en/admin:activity.json b/packages/client/src/lang/en/admin:activity.json
index 179f011b3..65902f85b 100644
--- a/packages/client/src/lang/en/admin:activity.json
+++ b/packages/client/src/lang/en/admin:activity.json
@@ -1,4 +1,22 @@
{
- "Activity Dashboard": "Activity Dashboard",
- "Coming soon...": "Coming soon..."
+ "Browsers": "Browsers",
+ "Countries": "Countries",
+ "Data Uploads": "Data Uploads",
+ "Device Types": "Device Types",
+ "Forum Posts": "Forum Posts",
+ "Hosted Layer Requests": "Hosted Layer Requests",
+ "Last 24 hours": "Last 24 hours",
+ "Last 30 days": "Last 30 days",
+ "Last 7 days": "Last 7 days",
+ "Layers Stored": "Layers Stored",
+ "Most Popular Hosted Layers": "Most Popular Hosted Layers",
+ "Operating Systems": "Operating Systems",
+ "Participants": "Participants",
+ "Referrers": "Referrers",
+ "Sketches": "Sketches",
+ "Survey Responses": "Survey Responses",
+ "Total Visitors": "Total Visitors",
+ "Updated every 5 minutes.": "Updated every 5 minutes.",
+ "Usage Dashboard": "Usage Dashboard",
+ "Visitor Metrics": "Visitor Metrics"
}
diff --git a/packages/client/src/lang/en/admin:data.json b/packages/client/src/lang/en/admin:data.json
index 6e3cb358d..37eec18ed 100644
--- a/packages/client/src/lang/en/admin:data.json
+++ b/packages/client/src/lang/en/admin:data.json
@@ -1,22 +1,63 @@
{
" attributes": " attributes",
+ " for all versions": " for all versions",
+ "1 year": "1 year",
+ "30 days": "30 days",
+ "6 months": "6 months",
+ "A custom expression function is being used for this property. You can switch to the code editor to modify it, or delete the expression so you may use the graphical editor.": "A custom expression function is being used for this property. You can switch to the code editor to modify it, or delete the expression so you may use the graphical editor.",
"Add Folder": "Add Folder",
"Adjusted Maximum Zoom Level": "Adjusted Maximum Zoom Level",
+ "An error occured when rendering the controls for this visualization type. You may change visualization types to restore editing capability, or use the code editor.": "An error occured when rendering the controls for this visualization type. You may change visualization types to restore editing capability, or use the code editor.",
+ "Analyze layer performance details": "Analyze layer performance details",
"Analyzing data fetching performance": "Analyzing data fetching performance",
"Any public service which conforms to the <2>Mapbox Vector Tile specification2> (mvt) can be added to SeaSketch using a url template. Enter the url of the vector tile service below, with placeholders for {z}, {x}, and {y}. Cartography can be customized after import.": "Any public service which conforms to the <2>Mapbox Vector Tile specification2> (mvt) can be added to SeaSketch using a url template. Enter the url of the vector tile service below, with placeholders for {z}, {x}, and {y}. Cartography can be customized after import.",
+ "Appearance": "Appearance",
"ArcGIS Feature Layer Performance Details": "ArcGIS Feature Layer Performance Details",
+ "ArcGIS sources always rollback to dynamic style from source server.": "ArcGIS sources always rollback to dynamic style from source server.",
+ "Archived Data Layer Retention Policy": "Archived Data Layer Retention Policy",
+ "Archived Layer Retention...": "Archived Layer Retention...",
+ "Archived data layers hosted on SeaSketch count against your project's storage quota. You may choose to keep these previous versions of layers indefinitely, or have them automatically deleted after a period of time.": "Archived data layers hosted on SeaSketch count against your project's storage quota. You may choose to keep these previous versions of layers indefinitely, or have them automatically deleted after a period of time.",
+ "Archived data layers will be deleted after 180 days": "Archived data layers will be deleted after 180 days",
+ "Archived data layers will be deleted after 30 days": "Archived data layers will be deleted after 30 days",
+ "Archived data layers will be deleted after 365 days": "Archived data layers will be deleted after 365 days",
+ "Archived data layers will only be deleted when done so manually": "Archived data layers will only be deleted when done so manually",
+ "Archives which were created after version {{version}} will be automatically deleted. This action cannot be undone.": "Archives which were created after version {{version}} will be automatically deleted. This action cannot be undone.",
"Are you sure you want to delete {{name}}?": "Are you sure you want to delete {{name}}?",
"Are you sure you want to proceed?": "Are you sure you want to proceed?",
+ "Assets": "Assets",
+ "Attribution": "Attribution",
"Auto": "Auto",
"Background Jobs": "Background Jobs",
"Basemap Labels": "Basemap Labels",
"Best option for smaller services, can cause problems for larger ones.": "Best option for smaller services, can cause problems for larger ones.",
+ "Bounds": "Bounds",
+ "Brightness": "Brightness",
"Calculated Tile Count": "Calculated Tile Count",
+ "Cancel": "Cancel",
+ "Categories": "Categories",
+ "Changelog": "Changelog",
+ "Changelog Submitted": "Changelog Submitted",
"Check that you uploaded a supported file type. If you would like to <2>contact support2> about this error, reference upload ID ": "Check that you uploaded a supported file type. If you would like to <2>contact support2> about this error, reference upload ID ",
"Choose one or more of these layers to import as seperate table of contents items.": "Choose one or more of these layers to import as seperate table of contents items.",
+ "Circle Radius": "Circle Radius",
+ "Clear expression": "Clear expression",
"Close": "Close",
+ "Code": "Code",
+ "Color": "Color",
+ "Color Palette": "Color Palette",
+ "Continuous": "Continuous",
+ "Contrast": "Contrast",
+ "Conversion job details": "Conversion job details",
+ "Convert to Hosted Layer": "Convert to Hosted Layer",
"Convert to SeaSketch hosted layer": "Convert to SeaSketch hosted layer",
"Convert to editable metadata": "Convert to editable metadata",
+ "Converted": "Converted",
+ "Converting ArcGIS Service": "Converting ArcGIS Service",
+ "Created": "Created",
+ "Created By": "Created By",
+ "Custom Expression": "Custom Expression",
+ "Custom palette": "Custom palette",
+ "Dashed": "Dashed",
"Data Hosting Quota": "Data Hosting Quota",
"Data Hosting Quota Usage": "Data Hosting Quota Usage",
"Data Quota Usage by Source": "Data Quota Usage by Source",
@@ -25,68 +66,170 @@
"Data download...": "Data download...",
"Delete": "Delete",
"Delete Item": "Delete Item",
+ "Delete Version": "Delete Version",
"Dismiss": "Dismiss",
+ "Dismiss Error": "Dismiss Error",
+ "Display rounded numbers": "Display rounded numbers",
"Display vectors instead of requesting images from MapService": "Display vectors instead of requesting images from MapService",
"Download size": "Download size",
+ "Drag & Drop a spatial data file here to create a new version of this layer, or <2>browse for files on your computer2>.": "Drag & Drop a spatial data file here to create a new version of this layer, or <2>browse for files on your computer2>.",
"Each SeaSketch project supports free hosting of data uploads up to the storage limit specified above. Use the visualization below to manage your data usage and see how uploaded files and generated map tiles contribute to this limit. <2>Contact support2> if you need more space or delete layers to free up quota.": "Each SeaSketch project supports free hosting of data uploads up to the storage limit specified above. Use the visualization below to manage your data usage and see how uploaded files and generated map tiles contribute to this limit. <2>Contact support2> if you need more space or delete layers to free up quota.",
"Edit": "Edit",
+ "Editor": "Editor",
+ "Enable High-DPI Requests": "Enable High-DPI Requests",
"Enable data download by default": "Enable data download by default",
+ "Equal Interval": "Equal Interval",
"Estimated tile package size": "Estimated tile package size",
+ "Fetch Strategy": "Fetch Strategy",
+ "File has been uploaded and has been submitted to the system. It should be processed shortly. You can close this window or your browser and return later if you wish.": "File has been uploaded and has been submitted to the system. It should be processed shortly. You can close this window or your browser and return later if you wish.",
+ "Format Code": "Format Code",
+ "Geometric": "Geometric",
+ "Geometry": "Geometry",
+ "Geoprocessing Reference ID": "Geoprocessing Reference ID",
+ "Hide all other overlays": "Hide all other overlays",
+ "Histogram": "Histogram",
"Host on SeaSketch...": "Host on SeaSketch...",
+ "Hue Rotation": "Hue Rotation",
+ "If set, a short attribution string will be shown at the bottom of the map.": "If set, a short attribution string will be shown at the bottom of the map.",
"If you have <2>GeoJSON2> hosted publicly on the web you can add a dynamic link to it here. Changes to the GeoJSON will be reflected on the map in real time depending on cache headers set by the remote server. Styling can be set after import.": "If you have <2>GeoJSON2> hosted publicly on the web you can add a dynamic link to it here. Changes to the GeoJSON will be reflected on the map in real time depending on cache headers set by the remote server. Styling can be set after import.",
"Image Format": "Image Format",
+ "Imagery data looks best using <1>jpg1>, for all others <4>png4> is usually the right choice.": "Imagery data looks best using <1>jpg1>, for all others <4>png4> is usually the right choice.",
"Import layer": "Import layer",
+ "Include cartography.": "Include cartography.",
+ "Insert a new layer": "Insert a new layer",
"Job Failed": "Job Failed",
+ "Keep indefinitely": "Keep indefinitely",
"Last modified ": "Last modified ",
"Layer Z-Ordering": "Layer Z-Ordering",
+ "Layers can be styled using <2>MapBox GL Style Layers2>. Don't specify a <4>source4> or <6>id6> property on your layers, those will be managed for you by SeaSketch. Press <9>Control+Space9> to autocomplete string values and property names, and hover over properties to see documentation.": "Layers can be styled using <2>MapBox GL Style Layers2>. Don't specify a <4>source4> or <6>id6> property on your layers, those will be managed for you by SeaSketch. Press <9>Control+Space9> to autocomplete string values and property names, and hover over properties to see documentation.",
+ "Leave blank to display attribution dynamically from ArcGIS service, or provide attribution to override the service metadata.": "Leave blank to display attribution dynamically from ArcGIS service, or provide attribution to override the service metadata.",
"Leaving this page will cancel your spatial data file upload. Are you sure you want to cancel?": "Leaving this page will cancel your spatial data file upload. Are you sure you want to cancel?",
+ "Legend": "Legend",
+ "Limit to zoom range": "Limit to zoom range",
"Loading usage info...": "Loading usage info...",
+ "Manual": "Manual",
"MapBox fees to generate package (w/o free tier)": "MapBox fees to generate package (w/o free tier)",
"Metadata from this ArcGIS Service has been customized within SeaSketch and will no longer show changes published from the origin server.": "Metadata from this ArcGIS Service has been customized within SeaSketch and will no longer show changes published from the origin server.",
+ "Min, Max Zoom": "Min, Max Zoom",
+ "Natural Breaks": "Natural Breaks",
"No Tile Packages found. Related maps cannot be used offline until created. <2>Generating tile packages may incure fees from MapBox2>": "No Tile Packages found. Related maps cannot be used offline until created. <2>Generating tile packages may incure fees from MapBox2>",
+ "None": "None",
"NumGeostatsValues": "{{count}} values",
"NumGeostatsValues_plural": "NumGeostatsValues_plural",
+ "Number of Steps": "Number of Steps",
+ "Opacity": "Opacity",
+ "Open layer property details": "Open layer property details",
+ "Outline": "Outline",
"Over quota": "Over quota",
+ "Overlay Title": "Overlay Title",
+ "Overlays can be assigned a stable id for reference by geoprocessing clients. You can also refer to this overlay using the following ID.": "Overlays can be assigned a stable id for reference by geoprocessing clients. You can also refer to this overlay using the following ID.",
+ "Please do not close this window until the upload is complete. Take this moment to author a changelog for this revision.": "Please do not close this window until the upload is complete. Take this moment to author a changelog for this revision.",
"Popups and other interactivity options are not supported for tiled ArcGIS sources.": "Popups and other interactivity options are not supported for tiled ArcGIS sources.",
+ "Prior to May 2024, author information was not collected for all layers.": "Prior to May 2024, author information was not collected for all layers.",
"Provide a MapBox Secret Key in your <2>project settings2> to enable browsing of maps in your account.": "Provide a MapBox Secret Key in your <2>project settings2> to enable browsing of maps in your account.",
"Publish": "Publish",
+ "Quantiles": "Quantiles",
+ "RGB": "RGB",
+ "RGBA": "RGBA",
+ "Raster": "Raster",
+ "Raster Fade Duration": "Raster Fade Duration",
+ "Raster Resampling": "Raster Resampling",
"Raster tiles hosted on ArcGIS Server": "Raster tiles hosted on ArcGIS Server",
+ "Redo": "Redo",
"Requests": "Requests",
"Required tiling settings": "Required tiling settings",
+ "Respect Scale and Offset": "Respect Scale and Offset",
+ "Rollback to Version {{version}}": "Rollback to Version {{version}}",
+ "Rollback to older style, discarding recent changes.": "Rollback to older style, discarding recent changes.",
+ "Saturation": "Saturation",
+ "Save": "Save",
"Save changes": "Save changes",
+ "Saving these settings will apply the new retention policy within the next few minutes, deleting {{layers}} sources and freeing up {{bytes}} of storage.": "Saving these settings will apply the new retention policy within the next few minutes, deleting {{layers}} sources and freeing up {{bytes}} of storage.",
+ "Saving this setting will immediately stop automatic deletion of archived data layer versions.": "Saving this setting will immediately stop automatic deletion of archived data layer versions.",
"SeaSketch can extract vector data from this service and host it on our servers for better performance and access to additional features such as our styling tools. The conversion process may take a few minutes and will operate in the background.": "SeaSketch can extract vector data from this service and host it on our servers for better performance and access to additional features such as our styling tools. The conversion process may take a few minutes and will operate in the background.",
+ "SeaSketch determines an appropriate strategy for retrieving vector data at import time.
<2><0>0>2>": "SeaSketch determines an appropriate strategy for retrieving vector data at import time.
<2><0>0>2>",
+ "Select a resampling method": "Select a resampling method",
+ "Show all categories": "Show all categories",
+ "Show layer extent": "Show layer extent",
+ "Show less": "Show less",
+ "Single band": "Single band",
+ "Solid": "Solid",
"Some Esri basemaps include blank tiles that read \"Map data not yet available\" at higher zoom levels. You may be able to set the max zoom level lower to avoid this issue. Otherwise, this should be set to auto to use the service metadata.": "Some Esri basemaps include blank tiles that read \"Map data not yet available\" at higher zoom levels. You may be able to set the max zoom level lower to avoid this issue. Otherwise, this should be set to auto to use the service metadata.",
+ "Source Location": "Source Location",
"Source Server": "Source Server",
"Source Type": "Source Type",
+ "Standard Deviation": "Standard Deviation",
+ "Steps": "Steps",
+ "Stroke Style": "Stroke Style",
"Style save error - ": "Style save error - ",
"Styling is not available for ArcGIS sources. SeaSketch respects cartographic styling as it is defined in the service and will change automatically when the service is updated.": "Styling is not available for ArcGIS sources. SeaSketch respects cartographic styling as it is defined in the service and will change automatically when the service is updated.",
+ "Sublayer": "Sublayer",
+ "Submit Changelog": "Submit Changelog",
+ "Submit your changelog to proceed.": "Submit your changelog to proceed.",
"Supported Zoom Levels": "Supported Zoom Levels",
"Table of Contents": "Table of Contents",
+ "The new cartography tools are only available for raster and polygon data sources at this time. Please check again soon for added support for point and line data.": "The new cartography tools are only available for raster and polygon data sources at this time. Please check again soon for added support for point and line data.",
+ "The style for this layer could not be recognized using any of SeaSketch's templates. Please choose a visualization type if you would like to use the graphical style editor, or switch to the code editor to make changes.": "The style for this layer could not be recognized using any of SeaSketch's templates. Please choose a visualization type if you would like to use the graphical style editor, or switch to the code editor to make changes.",
"The tile package below will be made available for download to users who need to use these maps offline. Make sure the maximum zoom level supported by the existing tile package meets your needs. If not you can generate a new one which will replace it when finished.": "The tile package below will be made available for download to users who need to use these maps offline. Make sure the maximum zoom level supported by the existing tile package meets your needs. If not you can generate a new one which will replace it when finished.",
+ "This is the first version of this data source. SeaSketch can track changes to this layer as you upload new revisions, enabling you to monitor changes over time and rollback to previous versions.": "This is the first version of this data source. SeaSketch can track changes to this layer as you upload new revisions, enabling you to monitor changes over time and rollback to previous versions.",
"This layer is currently being converted to a SeaSketch hosted layer. Feel free to close this dialog or you browser tab and check back later.": "This layer is currently being converted to a SeaSketch hosted layer. Feel free to close this dialog or you browser tab and check back later.",
"This layer is currently using dynamic metadata from the service which cannot be edited.": "This layer is currently using dynamic metadata from the service which cannot be edited.",
"This layer is currently using dynamic metadata from the service. Updates published to the origin server will be reflected here.": "This layer is currently using dynamic metadata from the service. Updates published to the origin server will be reflected here.",
+ "This older data source was uploaded before the introduction of the new cartography tools and is incompatible. Please use the code editor, or re-upload this data in order to enable these new tools.": "This older data source was uploaded before the introduction of the new cartography tools and is incompatible. Please use the code editor, or re-upload this data in order to enable these new tools.",
"This project does not yet have any data sources which contribute to the storage limit.": "This project does not yet have any data sources which contribute to the storage limit.",
"This project has exceeded its data storage quota. Please delete some data to make room for new uploads. You can see how much space your layers are using by selecting <2>View -> Data Hosting Quota2> from the toolbar.": "This project has exceeded its data storage quota. Please delete some data to make room for new uploads. You can see how much space your layers are using by selecting <2>View -> Data Hosting Quota2> from the toolbar.",
"This service exceeds the default bytes limit of 2MB and we recommend using the <1>Tiled1> fetch strategy. If you and your users are working in a high bandwidth environment, you may be able to use the <3>GeoJSON3> fetch strategy for datasets up to 30MB.": "This service exceeds the default bytes limit of 2MB and we recommend using the <1>Tiled1> fetch strategy. If you and your users are working in a high bandwidth environment, you may be able to use the <3>GeoJSON3> fetch strategy for datasets up to 30MB.",
"This service requires multiple requests to server to retrieve vector so it would be visualized best using the <1>Tiled1> fetch strategy.": "This service requires multiple requests to server to retrieve vector so it would be visualized best using the <1>Tiled1> fetch strategy.",
+ "This style contains more layers than can be modified using the editor. Switch to the code editor to modify these layers.": "This style contains more layers than can be modified using the editor. Switch to the code editor to modify these layers.",
+ "This update job failed. You can try again by uploading a new file. Contact <2>support@seasketch.org2> for assistance.": "This update job failed. You can try again by uploading a new file. Contact <2>support@seasketch.org2> for assistance.",
"This zoom range was determined by inspecting the service, but can also be manually specified.": "This zoom range was determined by inspecting the service, but can also be manually specified.",
"Tile Packages": "Tile Packages",
+ "Title": "Title",
"Total": "Total",
+ "URL Template": "URL Template",
+ "Undo": "Undo",
+ "Unknown": "Unknown",
+ "Unknown Author": "Unknown Author",
+ "Unknown author": "Unknown author",
+ "Update job details": "Update job details",
+ "Upload Complete": "Upload Complete",
+ "Uploaded": "Uploaded",
+ "Uploading File": "Uploading File",
"Usage by Source": "Usage by Source",
"Use metadata direct from the service": "Use metadata direct from the service",
"Used in": "Used in",
+ "Used to append text to values in the legend.": "Used to append text to values in the legend.",
"Using dynamic service metadata will discard any changes you have made within SeaSketch.": "Using dynamic service metadata will discard any changes you have made within SeaSketch.",
+ "Value suffix": "Value suffix",
+ "Version {{version}} details and settings": "Version {{version}} details and settings",
+ "Versions": "Versions",
+ "View": "View",
+ "Visualization options could not be determined for this data source. Please switch to the Code Editor to make changes to this style.": "Visualization options could not be determined for this data source. Please switch to the Code Editor to make changes to this style.",
"We highly recommend using the <1>GeoJSON1> fetch strategy for this service since it is a small dataset that can be retrieved in a single request.": "We highly recommend using the <1>GeoJSON1> fetch strategy for this service since it is a small dataset that can be retrieved in a single request.",
"When enabled, newly added data layers will be downloadable by default. This setting can be changed for each layer individually after creation. Changing this setting can help you avoid having to manually enable or disable data download for each layer. Note that this setting will not impact existing layers. To change the setting for existing layers, use Edit menu or individual layer edit window.": "When enabled, newly added data layers will be downloadable by default. This setting can be changed for each layer individually after creation. Changing this setting can help you avoid having to manually enable or disable data download for each layer. Note that this setting will not impact existing layers. To change the setting for existing layers, use Edit menu or individual layer edit window.",
+ "When rasters provide offset and/or scale metadata, this info can be used to adjust values in the legend.": "When rasters provide offset and/or scale metadata, this info can be used to adjust values in the legend.",
+ "You can download the data and upload a new copy from the Data Source tab. Older data sources will be upgraded for the new system using an automated process in the future.": "You can download the data and upload a new copy from the Data Source tab. Older data sources will be upgraded for the new system using an automated process in the future.",
"You have unsaved metadata changes. Are you sure you want to leave?": "You have unsaved metadata changes. Are you sure you want to leave?",
"Your project does not have any data layers yet. Drag & drop shapefiles or geojson here, or choose <2>Edit -> Add Data2> from the toolbar to get started.": "Your project does not have any data layers yet. Drag & drop shapefiles or geojson here, or choose <2>Edit -> Add Data2> from the toolbar to get started.",
"Zoom = {{zoom}}": "Zoom = {{zoom}}",
"Zoom levels": "Zoom levels",
"Zoom to Project Bounds": "Zoom to Project Bounds",
+ "band detail": "band detail",
+ "bands": "bands",
+ "by": "by",
+ "categorical": "categorical",
+ "column detail": "column detail",
+ "data values": "data values",
"dismiss all failures": "dismiss all failures",
"feature": "feature",
"features": "features",
+ "linear": "linear",
+ "nearest": "nearest",
+ "on ": "on ",
+ "original": "original",
+ "reset": "reset",
"seconds ago": "seconds ago",
- "view larger": "view larger"
+ "view larger": "view larger",
+ "zoom ": "zoom ",
+ "zoom range": "zoom range"
}
diff --git a/packages/client/src/lang/en/cache-settings.json b/packages/client/src/lang/en/cache-settings.json
index cb83d2bb5..39cf54ce5 100644
--- a/packages/client/src/lang/en/cache-settings.json
+++ b/packages/client/src/lang/en/cache-settings.json
@@ -7,9 +7,11 @@
"Improved Performance": "Improved Performance",
"Maximum": "Maximum",
"Minimum": "Minimum",
+ "No service worker found!": "No service worker found!",
"Only what's necessary to run SeaSketch": "Only what's necessary to run SeaSketch",
"Query Cache": "Query Cache",
"Saves some recently used app data for improved startup performance and use over poor internet connections": "Saves some recently used app data for improved startup performance and use over poor internet connections",
+ "Service Worker": "Service Worker",
"Use this setting if you are a facilitator or planner who uses SeaSketch regularly. Supports offline use.": "Use this setting if you are a facilitator or planner who uses SeaSketch regularly. Supports offline use.",
"Using of your browser's storage quota": "Using of your browser's storage quota"
}
diff --git a/packages/client/src/lang/en/homepage.json b/packages/client/src/lang/en/homepage.json
index 232decd26..43bebaef9 100644
--- a/packages/client/src/lang/en/homepage.json
+++ b/packages/client/src/lang/en/homepage.json
@@ -52,6 +52,8 @@
"SeaSketch puts powerful tools into the hands of ocean planners,\n stakeholders and the public that were once limited to GIS\n professionals, enabling participatory marine spatial planning\n processes that are closely tied to the relevant science and\n information. SeaSketch is being used around the globe in small\n agency teams and large community-driven initiatives to make better\n management decisions every day.": "SeaSketch puts powerful tools into the hands of ocean planners,\n stakeholders and the public that were once limited to GIS\n professionals, enabling participatory marine spatial planning\n processes that are closely tied to the relevant science and\n information. SeaSketch is being used around the globe in small\n agency teams and large community-driven initiatives to make better\n management decisions every day.",
"Searching for overlays...": "Searching for overlays...",
"Sending email...": "Sending email...",
+ "Show all ( more)": "Show all ( more)",
+ "Show less": "Show less",
"Sign In": "Sign In",
"Start Download": "Start Download",
"Tap again to measure a path, or use the buttons below to finish or start over.": "Tap again to measure a path, or use the buttons below to finish or start over.",
diff --git a/packages/client/src/lang/en/offline.json b/packages/client/src/lang/en/offline.json
index ca9dcf025..8651d983f 100644
--- a/packages/client/src/lang/en/offline.json
+++ b/packages/client/src/lang/en/offline.json
@@ -19,6 +19,7 @@
"Details": "Details",
"Dismiss": "Dismiss",
"Download": "Download",
+ "Download responses": "Download responses",
"Failed to render offline settings. Is ServiceWorker enabled?": "Failed to render offline settings. Is ServiceWorker enabled?",
"If you are online and SeaSketch is incorrect about your network connection, you can <2>proceed to the online site2>.": "If you are online and SeaSketch is incorrect about your network connection, you can <2>proceed to the online site2>.",
"Import Map Packages": "Import Map Packages",
diff --git a/packages/client/src/lang/en/translation.json b/packages/client/src/lang/en/translation.json
index ebbd6b94b..136cbc23f 100644
--- a/packages/client/src/lang/en/translation.json
+++ b/packages/client/src/lang/en/translation.json
@@ -1,21 +1,31 @@
{
"Add Data": "Add Data",
+ "Add Labels": "Add Labels",
"Add Mapbox Vector Tiles by URL": "Add Mapbox Vector Tiles by URL",
"Add Remote GeoJSON": "Add Remote GeoJSON",
"Add service to project": "Add service to project",
+ "Auto color based on fill": "Auto color based on fill",
"Basemap": "Basemap",
"Cancel": "Cancel",
+ "Categorize using field": "Categorize using field",
+ "Choose a visualization type": "Choose a visualization type",
"Close": "Close",
+ "Color": "Color",
"Connect to data services": "Connect to data services",
"Creating basemap...": "Creating basemap...",
"Creating thumbnail...": "Creating thumbnail...",
+ "Display rounded numbers": "Display rounded numbers",
"Drop Files Here to Upload": "Drop Files Here to Upload",
+ "Drop a file to update this layer": "Drop a file to update this layer",
"Edit": "Edit",
"Error importing service": "Error importing service",
"Error importing service. Could not generate thumbnail image": "Error importing service. Could not generate thumbnail image",
"Esri ArcGIS service...": "Esri ArcGIS service...",
"Evaluate service": "Evaluate service",
+ "Fill": "Fill",
+ "Font Size": "Font Size",
"GeoJSON Location": "GeoJSON Location",
+ "Halo": "Halo",
"Has changes since last publish": "Has changes since last publish",
"Host data on SeaSketch": "Host data on SeaSketch",
"Import layer": "Import layer",
@@ -23,6 +33,10 @@
"Import this tiled service as a...": "Import this tiled service as a...",
"Imported": "Imported",
"Invalid URL": "Invalid URL",
+ "Label Field": "Label Field",
+ "Label appears above categories. Enter a space to hide.": "Label appears above categories. Enter a space to hide.",
+ "Labels": "Labels",
+ "Labels the color scale. Use a space to hide.": "Labels the color scale. Use a space to hide.",
"Layers": "Layers",
"Legend": "Legend",
"Map tiles will be displayed below all overlay layers, and the basemap is accessible from the Maps tab.": "Map tiles will be displayed below all overlay layers, and the basemap is accessible from the Maps tab.",
@@ -36,9 +50,14 @@
"Quota Exceeded": "Quota Exceeded",
"Remote GeoJSON...": "Remote GeoJSON...",
"SeaSketch currently supports vector data in GeoJSON, Shapefile (zipped), GeoTiff, and FlatGeobuf formats.": "SeaSketch currently supports vector data in GeoJSON, Shapefile (zipped), GeoTiff, and FlatGeobuf formats.",
+ "Select a visualization type": "Select a visualization type",
"Service imported": "Service imported",
"Settings": "Settings",
"Starting upload": "Starting upload",
+ "Stroke": "Stroke",
+ "Stroke Color": "Stroke Color",
+ "Stroke Width": "Stroke Width",
+ "Style using field": "Style using field",
"Submit": "Submit",
"The <2>PMTiles2> format is an archive of all the tiles used to render this layer in SeaSketch.": "The <2>PMTiles2> format is an archive of all the tiles used to render this layer in SeaSketch.",
"This GeoJSON contains a GeometryCollection. It may not render as expected.": "This GeoJSON contains a GeometryCollection. It may not render as expected.",
@@ -46,13 +65,19 @@
"This GeoJSON took over 2 seconds to load. Consider downloading the data and uploading to SeaSketch for better performance.": "This GeoJSON took over 2 seconds to load. Consider downloading the data and uploading to SeaSketch for better performance.",
"This appears to be a file type which SeaSketch does not support for spatial uploads.": "This appears to be a file type which SeaSketch does not support for spatial uploads.",
"This appears to be an unsupported raster file type. For raster data, upload a GeoTiff.": "This appears to be an unsupported raster file type. For raster data, upload a GeoTiff.",
+ "This dataset only supports the currently selected visualization type": "This dataset only supports the currently selected visualization type",
"This response contains cache directives instructing users to re-download the dataset each time it is displayed. Consider using long-lived cache headers to improve performance.": "This response contains cache directives instructing users to re-download the dataset each time it is displayed. Consider using long-lived cache headers to improve performance.",
"This service has already been added to your project's table of contents. Are you sure you want to import it again?": "This service has already been added to your project's table of contents. Are you sure you want to import it again?",
+ "To replace a layer, upload a single file that will replace the existing layer. Close the data source editor if you would like to create new layers.": "To replace a layer, upload a single file that will replace the existing layer. Close the data source editor if you would like to create new layers.",
"URL Template": "URL Template",
"Upload spatial data files": "Upload spatial data files",
"Use this option if you would like to display these map tiles over an existing basemap. Best for tiled layers with alpha transparency.": "Use this option if you would like to display these map tiles over an existing basemap. Best for tiled layers with alpha transparency.",
+ "Used to append text to values in the legend.": "Used to append text to values in the legend.",
+ "Value Label": "Value Label",
+ "Value suffix": "Value suffix",
"Vector tiles by URL...": "Vector tiles by URL...",
"View": "View",
+ "You can only upload one file to update a layer.": "You can only upload one file to update a layer.",
"You can speed up the process of finding tileset boundaries by moving the map to the approximate location of the dataset.": "You can speed up the process of finding tileset boundaries by moving the map to the approximate location of the dataset.",
"Zoom range": "Zoom range"
}
diff --git a/packages/client/src/lang/fj/surveys.json b/packages/client/src/lang/fj/surveys.json
index 356997002..3ea37ec2e 100644
--- a/packages/client/src/lang/fj/surveys.json
+++ b/packages/client/src/lang/fj/surveys.json
@@ -5,7 +5,7 @@
"Are you sure you want to delete this shape?": "O vinakata dina mo bokoca na ibulibuli oqo?",
"AreaCount": "iWasewase {{count}}",
"AreaCount_plural": "{{count}} veivanua",
- "Average": "iVakatautauvata",
+ "Average": "Veimama se vakarauta",
"Back to Homepage": "Lesu ki na Homepage",
"Back to List": "Lesu ki na Lisi",
"Basemap": "Basemap",
@@ -37,13 +37,13 @@
"Finish Shape": "Vakacavara na iBulibuli",
"Focus on location": "Vakanamata ki na vanua",
"Focus on shapes": "Vakanamata ki na ibulibuli",
- "High": "Cecere",
+ "High": "Bibi saraga",
"If enabled, the survey will prompt for both a respondent name and the name of the facilitator.": "Kevaka e rawa, ena vakauqeta ruarua na vakadidike e dua e vakatarogi tiko kei na yacai dauveivakarautaki.",
"If required, users must click to open the attached document before agreeing": "Kevaka e gadrevi, me ra kiliki na vakayagataka me ra dolava na ivolatukutuku ka sa vakacurumi tu ni bera ni ra vakadonuya",
"Invalid shape": "iBulibuli sega ni vakabau",
"Invalid Shape": "iBulibuli Sega ni Vakabau",
"Language": "Vosa",
- "Low": "E ra",
+ "Low": "Lailai",
"Measure": "Vakarautaka",
"New Shape": "iTuvaki Vou",
"Next": "Tarava",
diff --git a/packages/client/src/lang/supported.ts b/packages/client/src/lang/supported.ts
index a1f27f803..8ebe7f55e 100644
--- a/packages/client/src/lang/supported.ts
+++ b/packages/client/src/lang/supported.ts
@@ -65,6 +65,11 @@ const languages: LangDetails[] = [
localName: "Deutsch",
code: "de",
},
+ {
+ name: "Gilbertese",
+ localName: "Gilbertese",
+ code: "gil",
+ },
{
name: "Croatian",
localName: "Hrvatski",
diff --git a/packages/client/src/lang/sw/basemaps.json b/packages/client/src/lang/sw/basemaps.json
new file mode 100644
index 000000000..1da982455
--- /dev/null
+++ b/packages/client/src/lang/sw/basemaps.json
@@ -0,0 +1,4 @@
+{
+ "3d Terrain": "Terrain ya 3d",
+ "Basemap Options": "Chaguzi za Basemap"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/cache-control.json b/packages/client/src/lang/sw/cache-control.json
new file mode 100644
index 000000000..cab20ea89
--- /dev/null
+++ b/packages/client/src/lang/sw/cache-control.json
@@ -0,0 +1,3 @@
+{
+ " ": "udhibiti wa cache: "
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/cache-settings.json b/packages/client/src/lang/sw/cache-settings.json
new file mode 100644
index 000000000..0e6ee0248
--- /dev/null
+++ b/packages/client/src/lang/sw/cache-settings.json
@@ -0,0 +1,15 @@
+{
+ "Cache Details": "Maelezo ya Cache",
+ "Cache Status": "Hali ya Akiba",
+ "Caches more data and preloads assets for better performance. Supports offline use.": "Huhifadhi data zaidi na kupakia mali kwa utendaji bora. Inasaidia matumizi ya nje ya mtandao.",
+ "Data Caching": "Data Caching",
+ "Default": "Kaida",
+ "Improved Performance": "Utendaji Ulioboreshwa",
+ "Maximum": "Upeo",
+ "Minimum": "Chini",
+ "Only what's necessary to run SeaSketch": "Ni nini tu kinachohitajika kuendesha SeaSketch",
+ "Query Cache": "Akiba ya Ulizo",
+ "Saves some recently used app data for improved startup performance and use over poor internet connections": "Huhifadhi baadhi ya data ya programu inayotumika hivi karibuni kwa utendaji bora wa kuanza na matumizi juu ya miunganisho duni ya mtandao",
+ "Use this setting if you are a facilitator or planner who uses SeaSketch regularly. Supports offline use.": "Tumia mpangilio huu ikiwa wewe ni mwezeshaji au mpangaji ambaye hutumia SeaSketch mara kwa mara. Inasaidia matumizi ya nje ya mtandao.",
+ "Using of your browser's storage quota": "Kutumia kiwango cha uhifadhi wa kivinjari chako"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/common.json b/packages/client/src/lang/sw/common.json
new file mode 100644
index 000000000..0784c8957
--- /dev/null
+++ b/packages/client/src/lang/sw/common.json
@@ -0,0 +1,17 @@
+{
+ "Cancel": "Katisha",
+ "Close": "Funga",
+ "Contact Support": "Msaada wa Mawasiliano",
+ "Disabled": "Walemavu",
+ "dismiss": "Kumfukuza",
+ "Enabled": "Kuwezeshwa",
+ "Enter a URL": "Ingiza URL",
+ "Job Status": "Hali ya Kazi",
+ "Locked at": "Imefungwa kwenye",
+ "Not signed in": "Haijasainiwa katika",
+ "OK": "Sawa kabisa",
+ "Select a tab": "Chagua kichupo",
+ "Sign In": "Ingia ndani",
+ "Signed in as": "Imesainiwa kama",
+ "Submit": "Wasilisha"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/data.json b/packages/client/src/lang/sw/data.json
new file mode 100644
index 000000000..97baca588
--- /dev/null
+++ b/packages/client/src/lang/sw/data.json
@@ -0,0 +1,3 @@
+{
+ "reset to defaults": "Weka upya kwa chaguo-msingi"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/digitizing.json b/packages/client/src/lang/sw/digitizing.json
new file mode 100644
index 000000000..8f7211d16
--- /dev/null
+++ b/packages/client/src/lang/sw/digitizing.json
@@ -0,0 +1,26 @@
+{
+ "CanCompleteLine": "Bofya ili kuongeza pointi zaidi, Bofya mara mbili ili kumaliza",
+ "CanCompletePolygonTouch": "Gusa sehemu ya kuanza au gonga mara mbili ili kumaliza",
+ "Click a line to edit": "Bofya mstari wa kuhariri",
+ "Click your sketch to edit geometry": "Bofya mchoro wako kuhariri jiometri",
+ "ClickToEditPolygonDesktop": "Bofya umbo kuhariri",
+ "ContinueDrawLine": "Bofya ili kuongeza pointi zaidi, Bofya mara mbili ili kumaliza",
+ "ContinuePolygon": "Bofya ili kuongeza pointi zaidi",
+ "ContinuePolygonTouch": "Gonga ili kuongeza pointi zaidi",
+ "DragPoint": "Buruta pointi ya kurekebisha",
+ "DragVertex": "Bofya na buruta pointi ili kurekebisha",
+ "DragVertexPolygonTouch": "Buruta pointi ili kurekebisha",
+ "EditPolygonDesktop": "Buruta pointi ili kurekebisha",
+ "EditPolygonTouch": "Gusa umbo ili kuhariri",
+ "FinishPolygonDesktop": "Bofya sehemu ya kuanzia au bofya mara mbili nukta ya mwisho ili kumaliza",
+ "Invalid Shape": "Umbo batili",
+ "InvalidShapeInstructions": "Umbo lako litageuka kuwa nyekundu ikiwa ni batili. Wakati hii inatokea hakikisha sura yako haivuki yenyewe, kama inavyoonyeshwa na alama za X. Ikiwa utaendelea kuwa na shida, fikiria kufuta sura yako na kuanza tena.",
+ "NoSelectionPoint": "Bofya pointi ya kuhariri",
+ "Okay": "Sawa",
+ "Reset Shape": "Weka upya Umbo",
+ "StartLine": "Bonyeza kwenye ramani ili kuanza mstari",
+ "StartPoint": "Bonyeza kwenye ramani ili kuweka pointi",
+ "StartPointTouch": "Gonga ramani ili kuweka pointi",
+ "StartPolygon": "<0>0>Bofya kwenye ramani ili kuanza polygon",
+ "StartPolygonTouch": "Gonga ramani ili kuanza polygon"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/forums.json b/packages/client/src/lang/sw/forums.json
new file mode 100644
index 000000000..8bcd25ce1
--- /dev/null
+++ b/packages/client/src/lang/sw/forums.json
@@ -0,0 +1,27 @@
+{
+ "<0>Sign in0> or <4>register4> for an account to participate in the forum.": "<0>Ingia0> au <4>kujiandikisha4> kwa akaunti ya kushiriki katika jukwaa.",
+ "Cancel": "Katisha",
+ "close": "Funga",
+ "download": "Kupakua",
+ "Forums": "Mikutano",
+ "lastReply": "Jibu la mwisho {{timeAgo}}. Ilianza na {{lastAuthor}}",
+ "Map Bookmark Errors": "Makosa ya Alamisho ya Ramani",
+ "New Topic": "Mada Mpya",
+ "New Topic Title...": "Kichwa cha Mada Mpya...",
+ "No forums have been configured for this project.": "Hakuna vikao vilivyosanidiwa kwa mradi huu.",
+ "participantCount": "{{count}} mtu",
+ "participantCount_plural": "{{count}} watu",
+ "Post a topic": "Chapisha mada",
+ "Post anyways": "Chapisho hata hivyo",
+ "Post New Topic": "Chapisha Mada Mpya",
+ "Post Reply": "Jibu la Posta",
+ "posted on": "posted kwenye",
+ "postedAt": "Posted {{timeAgo}} by {{lastAuthor}}",
+ "replied on": "alijibu juu ya",
+ "Replying as <2>2>": "Kujibu kama <2>2>",
+ "This forum has no discussion topics yet.": "Mkutano huu bado haujawa na mada ya majadiliano.",
+ "This forum has no discussion topics yet. Be the first to create one!": "Mkutano huu bado haujawa na mada ya majadiliano. Kuwa wa kwanza kuunda moja!",
+ "Untitled": "Unlimited",
+ "Your bookmarks refer to Sketches that are no longer posted. You should re-create these bookmarks before posting.": "Alamisho zako zinarejelea Sketches ambazo hazijachapishwa tena. Unapaswa kuunda upya alamisho hizi kabla ya kuchapisha.",
+ "Your participation in the forum is pending admin approval.": "Ushiriki wako katika jukwaa unasubiri idhini ya msimamizi."
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/frontpage.json b/packages/client/src/lang/sw/frontpage.json
new file mode 100644
index 000000000..20d5b3cd7
--- /dev/null
+++ b/packages/client/src/lang/sw/frontpage.json
@@ -0,0 +1,11 @@
+{
+ "Create a Project": "Unda Mradi",
+ "Create your own<1>1><2> SeaSketch Project2>": "Unda yako mwenyewe<1>1><2> Mradi wa SeaSketch2>",
+ "Create your project": "Unda mradi wako",
+ "Developer API": "API ya Wasanidi Programu",
+ "Please contact us at <2>support@seasketch.org2> to arrange a discussion about how SeaSketch can be used to support your planning efforts.": "Tafadhali wasiliana nasi kwa <2>support@seasketch.org2> ili kupanga majadiliano kuhusu jinsi SeaSketch inaweza kutumika kusaidia juhudi zako za kupanga.",
+ "Project name": "Jina la mradi",
+ "SeaSketch projects can be customized using our open-source <2>Geoprocessing Framework2>. Projects can define reports that visualize the impact of prospective zones using Typescript, React, and AWS Lambda.": "Miradi ya SeaSketch inaweza kuboreshwa kwa kutumia chanzo chetu wazi <2>Geoprocessing Framework2>. Miradi inaweza kufafanua ripoti zinazoonyesha athari za maeneo yanayotarajiwa kwa kutumia Typescript, React, na AWS Lambda.",
+ "Trusted by": "Kuaminiwa na",
+ "Use our collaborative geodesign and survey tools for marine spatial planning in your region. Your project will include tools to visualize maps, create discussion forums, sketch plans, and collect data using surveys - for free! Analytical reports may be developed and customized using our <5>geoprocessing framework5>.": "Tumia geodesign yetu ya ushirikiano na zana za utafiti kwa mipango ya anga ya baharini katika mkoa wako. Mradi wako utajumuisha zana za kuibua ramani, kuunda vikao vya majadiliano, mipango ya kuchora, na kukusanya data kwa kutumia tafiti - bure! Ripoti za uchambuzi zinaweza kutengenezwa na kuboreshwa kwa kutumia mfumo wetu wa <5>geoprocessing5>."
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/homepage.json b/packages/client/src/lang/sw/homepage.json
new file mode 100644
index 000000000..c40232046
--- /dev/null
+++ b/packages/client/src/lang/sw/homepage.json
@@ -0,0 +1,73 @@
+{
+ "<0>FlatGeobuf0> is a compact binary encoding for geographic data based on flatbuffers. It is a relatively new format only compatible with recent versions of open-source software.": "<0>FlatGeobuf0> ni usimbuaji wa binary wa data ya kijiografia kulingana na flatbuffers. Ni umbizo jipya linaloendana tu na matoleo ya hivi karibuni ya programu huria ya chanzo.",
+ "<0>Zipped shapefiles0> are a compressed binary format compatible with most software.": "<0>Zipped shapefiles0> ni muundo wa binary uliobanwa unaoendana na programu nyingi.",
+ "Alternate formats": "Maumbizo mbadala",
+ "authenticating...": "ya kuthibitisha...",
+ "Before creating a project, you must verify your email address. Please check your inbox for a verification email from <2>do-not-reply@seasketch.org2>": "Kabla ya kuunda mradi, lazima uthibitishe anwani yako ya barua pepe. Tafadhali angalia kikasha chako kwa barua pepe ya uthibitisho kutoka <2>do-not-reply@seasketch.org2>",
+ "By creating a project, you are agreeing to our <2>Terms of Use2> and <6>Privacy Policy6>.": "Kwa kuunda mradi, unakubaliana na <2>Masharti ya Matumizi2> na <6>Sera ya faragha6>.",
+ "Click on the map to start measuring.": "Bonyeza kwenye ramani ili kuanza kupima.",
+ "close": "Funga",
+ "Close": "Funga",
+ "Copied!": "Nakiliwa!",
+ "Copy Link": "Nakili Kiungo",
+ "Copy Reference": "Nakili Marejeo",
+ "Create an account": "Unda akaunti",
+ "Create your own SeaSketch project.": "Unda mradi wako wa SeaSketch.",
+ "Dismiss": "Kumfukuza",
+ "Double-click to finish measuring or click to draw a path.": "Bofya mara mbili ili kumaliza kupima au bofya ili kuchora njia.",
+ "Download": "Kupakua",
+ "Download...": "Kupakua...",
+ "Drag points to modify the measured distance.": "Buruta pointi ili kurekebisha umbali uliopimwa.",
+ "Email sent. Check your inbox 📨": "Barua pepe iliyotumwa. Angalia kikasha 📨 chako",
+ "Error searching overlays": "Kosa la kutafuta overlays",
+ "finish": "Kumaliza",
+ "GeoJSON is an uncompressed text format compatible with most spatial software.": "GeoJSON ni umbizo la maandishi lisilobanwa linaloendana na programu nyingi za anga.",
+ "GeoTIFF is a public domain metadata standard which allows georeferencing information to be embedded within a TIFF file.": "GeoTIFF ni kiwango cha metadata ya kikoa cha umma ambayo inaruhusu habari ya georeferencing kupachikwa ndani ya faili ya TIFF.",
+ "Get started": "Kuanza",
+ "kilometers": "Kilomita",
+ "Latest activity": "Shughuli ya hivi karibuni",
+ "Latest Discussions": "Majadiliano ya hivi karibuni",
+ "Learn more": "Jifunze zaidi",
+ "Legend": "Maelezo mafupi",
+ "Link Copied!": "Kiungo kilichonakiliwa!",
+ "Logging into your account is the first step to creating a new SeaSketch project.": "Kuingia kwenye akaunti yako ni hatua ya kwanza ya kuunda mradi mpya wa SeaSketch.",
+ "Looking for projects like <2>Bermuda2>, <5>MaPP5>, or <8>US Mapping Coordination8>? You can find these projects in <11>SeaSketch Legacy11>.": "Kuangalia kwa miradi kama <2>Bermuda2>, <5>MaPP5>, au <8>US Mapping Uratibu8>? Unaweza kupata miradi hii katika <11>SeaSketch Legacy11>.",
+ "Metadata": "Metadata",
+ "meters": "Mita",
+ "miles": "Maili",
+ "Move to back": "Sogeza nyuma",
+ "Move to front": "Sogeza mbele",
+ "nautical miles": "maili ya nautical",
+ "No matching overlays found": "Hakuna overlays vinavyolingana kupatikana",
+ "NumPosts": "{{count}} post",
+ "NumPosts_plural": "{{count}} posts",
+ "NumTopics": "{{count}} mada",
+ "NumTopics_plural": "{{count}} mada",
+ "Opacity": "Upavu",
+ "Or": "Au",
+ "Original file": "Faili ya asili",
+ "Original file uploaded on ": "Faili ya asili iliyopakiwa kwenye ",
+ "PNG is a raster-graphics file-format that supports lossless data compression. It has no spatial metadata encoded within it so is not useful in spatial software.": "PNG ni fomu ya faili ya raster-graphics ambayo inasaidia compression ya data isiyo na hasara. Haina metadata ya anga iliyosimbwa ndani yake kwa hivyo haifai katika programu ya anga.",
+ "Posted in <1>1>": "Imewekwa katika <1>1>",
+ "Ready to dive in?": "Uko tayari kuingia?",
+ "ReplyCount": "{{count}} jibu",
+ "ReplyCount_plural": "Majibu ya {{count}}",
+ "Resend verification email": "Tuma tena barua pepe ya uthibitishaji",
+ "reset": "Weka upya",
+ "Reset layers": "Weka upya tabaka",
+ "Reset overlays": "Weka upya overlays",
+ "search layers": "tabaka za utafutaji",
+ "Searching for overlays...": "Search kwa ajili ya overs...",
+ "SeaSketch puts powerful tools into the hands of ocean planners,\n stakeholders and the public that were once limited to GIS\n professionals, enabling participatory marine spatial planning\n processes that are closely tied to the relevant science and\n information. SeaSketch is being used around the globe in small\n agency teams and large community-driven initiatives to make better\n management decisions every day.": "SeaSketch huweka zana zenye nguvu mikononi mwa wapangaji wa bahari,\n wadau na umma ambao wakati mmoja walikuwa mdogo kwa GIS\n wataalamu, kuwezesha mipango shirikishi ya anga ya baharini\n Taratibu ambazo zinahusishwa kwa karibu na sayansi husika na\n Taarifa. SeaSketch inatumiwa kote ulimwenguni kwa ndogo\n Timu za wakala na mipango mikubwa inayoendeshwa na jamii ili kufanya vizuri\n maamuzi ya uongozi kila siku.",
+ "SeaSketch Supports Collaborative Planning for our Oceans": "SeaSketch inasaidia Mipango ya Ushirikiano kwa Bahari zetu",
+ "Sending email...": "Kutuma barua pepe...",
+ "Sign In": "Ingia ndani",
+ "Start Download": "Anza Upakuaji",
+ "Tap again to measure a path, or use the buttons below to finish or start over.": "Gonga tena ili kupima njia, au tumia vitufe hapa chini kumaliza au kuanza tena.",
+ "Tap the map to start measuring.": "Gonga ramani ili kuanza kupima.",
+ "This data layer is hosted on an ArcGIS vector service. SeaSketch will extract vector features from the service and return them to you as a GeoJSON file, usable in most modern geospatial software. This extract may be up to 3 hours old.": "Safu hii ya data inashikiliwa kwenye huduma ya vector ya ArcGIS. SeaSketch itatoa vipengele vya vector kutoka kwa huduma na kuzirudisha kwako kama faili ya GeoJSON, inayoweza kutumika katika programu ya kisasa ya geospatial. Kichocheo hiki kinaweza kuwa hadi masaa 3.",
+ "This data source comes from a GeoJSON file on a 3rd party server. Click the link below to download it from the original source.": "Chanzo hiki cha data kinatoka kwa faili ya GeoJSON kwenye seva ya mtu wa tatu. Bofya kiungo hapa chini ili kuipakua kutoka kwa chanzo asili.",
+ "View metadata": "Tazama metadata",
+ "You are accessing SeaSketch from the beta domain next.seasket.ch. For the best experience, please use <2>www.seasketch.org2>. If you are using offline features <5>read these instructions5>.": "Unapata SeaSketch kutoka kwa kikoa cha beta next.seasket.ch. Kwa uzoefu bora, tafadhali tumia <2>www.seasketch.org2>. Ikiwa unatumia vipengele vya nje ya mtandao <5>soma maagizo haya5>.",
+ "Zoom to bounds": "Kuza kwa mipaka"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/invites.json b/packages/client/src/lang/sw/invites.json
new file mode 100644
index 000000000..b920caebd
--- /dev/null
+++ b/packages/client/src/lang/sw/invites.json
@@ -0,0 +1,17 @@
+{
+ "Accept as": "Kubali kama {{email}}",
+ "An account with this email address already exists.": "Akaunti iliyo na anwani hii ya barua pepe tayari ipo.",
+ "Confirming invite": "Kuthibitisha mwaliko",
+ "Contact {{supportEmail}} to request a new invitation.": "Wasiliana {{supportEmail}} kuomba mwaliko mpya.",
+ "Create an Account": "Unda akaunti",
+ "Logout and sign in as ": "Ingia na uingie kama ",
+ "Sign In": "Ingia ndani",
+ "This invitation has already been accepted.<1> Proceed to the project 1> or <5>contact support5>if you believe this to be an error.": "Mwaliko huu tayari umekubaliwa. <1> Endelea kwenye mradi 1> au <5>contact support5> kama unaamini hii ni kosa.",
+ "This invitation was originally sent to <2>2>.": "Mwaliko huu ulitumwa awali kwa <2>2>.",
+ "Use another account": "Tumia akaunti nyingine",
+ "Verifying invitation code": "Kuthibitisha msimbo wa mwaliko",
+ "Welcome, !": "Karibu!",
+ "Welcome!": "Karibu!",
+ "You have been invited to participate in a SeaSketch project.": "Umealikwa kushiriki katika mradi wa SeaSketch.",
+ "Your invitation to this project has expired.": "Mwaliko wako kwa mradi huu umeisha."
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/latency.json b/packages/client/src/lang/sw/latency.json
new file mode 100644
index 000000000..cab20ea89
--- /dev/null
+++ b/packages/client/src/lang/sw/latency.json
@@ -0,0 +1,3 @@
+{
+ " ": "udhibiti wa cache: "
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/map.json b/packages/client/src/lang/sw/map.json
new file mode 100644
index 000000000..45ad80c66
--- /dev/null
+++ b/packages/client/src/lang/sw/map.json
@@ -0,0 +1,7 @@
+{
+ "Map bookmark shown": "Alamisho ya ramani iliyoonyeshwa",
+ "missingLayerCount": "Alamisho ya ramani iliyoonyeshwa ({{count}} kosa)",
+ "missingLayerCount_plural": "Alamisho ya ramani iliyoonyeshwa ({{count}} makosa)",
+ "undo": "Tendua",
+ "view details": "Tazama maelezo"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/nav.json b/packages/client/src/lang/sw/nav.json
new file mode 100644
index 000000000..fb2a728f5
--- /dev/null
+++ b/packages/client/src/lang/sw/nav.json
@@ -0,0 +1,26 @@
+{
+ "About": "Kuhusu",
+ "Account settings": "Mipangilio ya akaunti",
+ "Add data": "Ongeza data",
+ "Add folder": "Ongeza folda",
+ "Are you sure you want to delete {{name}}?": "Una uhakika unataka kufuta {{name}}?",
+ "Contact support": "Msaada wa mawasiliano",
+ "Default Visibility": "Uonekanaji Chaguo-msingi",
+ "Delete": "Futa",
+ "Delete Item": "Futa Kipengee",
+ "Developer API": "API ya Wasanidi Programu",
+ "Edit": "Hariri",
+ "Edit metadata": "Hariri metadata",
+ "Metadata": "Metadata",
+ "Projects": "Miradi",
+ "Publish": "Chapisha",
+ "SeaSketch logo": "Nembo ya SeaSketch",
+ "Sign in": "Ingia ndani",
+ "Sign In": "Ingia ndani",
+ "Sign out": "Ondoka",
+ "Signed in as": "Imesainiwa kama",
+ "Tree Editor": "Mhariri wa Mti",
+ "view": "Mwoneko",
+ "Z-Order": "Z-Order",
+ "Zoom to bounds": "Kuza kwa mipaka"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/offline.json b/packages/client/src/lang/sw/offline.json
new file mode 100644
index 000000000..fbe1d6e69
--- /dev/null
+++ b/packages/client/src/lang/sw/offline.json
@@ -0,0 +1,92 @@
+{
+ " support files": " faili za msaada",
+ "{{bytes}} tile packages, ": "{{bytes}} vifurushi vya kigae, ",
+ "Access Offline Content": "Fikia Maudhui ya Nje ya Mtandao",
+ "All responses submitted": "Majibu yote yaliyowasilishwa",
+ "All your offline work is now saved to the SeaSketch database. You can now close the browser window, or use the links below to navigate back to your surveys and projects.": "Kazi yako yote ya nje ya mtandao sasa imehifadhiwa kwenye hifadhidata ya SeaSketch. Sasa unaweza kufunga dirisha la kivinjari, au kutumia viungo hapa chini ili kurudi kwenye tafiti na miradi yako.",
+ "Are you sure you want to delete this offline map data?": "Una uhakika unataka kufuta data hii ya ramani ya nje ya mtandao?",
+ "Begin Download": "Anza Pakua",
+ "Cache Status": "Hali ya Akiba",
+ "Cancel": "Katisha",
+ "CartographicUpdates": "Ramani hii ina sasisho mpya za cartographic. Unaweza kusasisha ramani hii bila kupakua vigae vipya vya ramani.",
+ "CartographicUpdatesWithTimestamp": "CartographicUpdatesWithTimestamp",
+ "Clear cache": "Futa kache",
+ "Clear Map Data": "Futa Data ya Ramani",
+ "Close": "Funga",
+ "Created ": "Aliumba ",
+ "Data Caching setting must be set higher to enable offline support.": "Mpangilio wa Caching Data lazima uweke juu ili kuwezesha usaidizi wa nje ya mtandao.",
+ "Data has been imported and is ready for use.": "Data imeingizwa na iko tayari kwa matumizi.",
+ "Data is being loaded into your browser's cache. Please keep you browser open and on this page until the process is complete.": "Data inapakiwa kwenye kashe ya kivinjari chako. Tafadhali weka kivinjari wazi na kwenye ukurasa huu hadi mchakato utakapokamilika.",
+ "Details": "Maelezo",
+ "Dismiss": "Kumfukuza",
+ "documentCount": "{{count}} waraka",
+ "documentCount_plural": "{{count}} nyaraka",
+ "Download": "Kupakua",
+ "downloadedAt": "kupakuliwa",
+ "Failed to render offline settings. Is ServiceWorker enabled?": "Imeshindwa kutoa mipangilio ya nje ya mtandao. Je, Mfanyakazi wa Huduma amewezeshwa?",
+ "If you are online and SeaSketch is incorrect about your network connection, you can <2>proceed to the online site2>.": "Ikiwa uko mtandaoni na SeaSketch sio sahihi kuhusu muunganisho wako wa mtandao, unaweza <2>kuahirisha kwenye tovuti ya mtandaoni2>.",
+ "imageCount": "{{count}} taswira",
+ "imageCount_plural": "{{count}} picha",
+ "Import data": "Ingiza data",
+ "Import Map Packages": "Ingiza Vifurushi vya Ramani",
+ "Importing data from these tile packages will add the following maps to cache for offline use.": "Kuingiza data kutoka kwa vifurushi hivi vya tile kutaongeza ramani zifuatazo kwenye akiba kwa matumizi ya nje ya mtandao.",
+ "It appears you don't have connection to the internet. SeaSketch supports offline use for the collection of survey data which you can submit when back online. If you don't see the project or survey you are looking for you will need to reconnect to the internet and adjust your account settings.": "Inaonekana huna uhusiano na mtandao. SeaSketch inasaidia matumizi ya nje ya mtandao kwa ukusanyaji wa data ya utafiti ambayo unaweza kuwasilisha wakati wa kurudi mtandaoni. Ikiwa huoni mradi au uchunguzi unaotafuta utahitaji kuunganisha tena kwenye mtandao na kurekebisha mipangilio ya akaunti yako.",
+ "last updated": "Imesasishwa mwisho",
+ "map tile data": "data ya tile ya ramani",
+ "Map Tile Updates": "Masasisho ya Tile ya Ramani",
+ "Maps used in selected surveys will each need to be loaded into browser cache. The cache state of each map is indicated below.": "Ramani zinazotumiwa katika tafiti zilizochaguliwa kila moja itahitaji kupakiwa kwenye kashe ya kivinjari. Hali ya kache ya kila ramani inaonyeshwa hapa chini.",
+ "Network Error": "Hitilafu ya Mtandao",
+ "No offline responses to submit": "Hakuna majibu ya nje ya mtandao ya kuwasilisha",
+ "Not cached": "Haijahifadhiwa",
+ "Offline cache settings can only be configured by signed in users. Please <2>sign in2> to adjust these settings.": "Mipangilio ya kache ya nje ya mtandao inaweza kusanidiwa tu na watumiaji waliosainiwa. Tafadhali <2>ingia2> ili kurekebisha mipangilio hii.",
+ "Offline functionality is only supported using Google Chrome. Other browsers have restrictions that prevent the caching of large amounts of map data, and may have other problems.
Please <5>download Google Chrome5>": "Utendaji wa nje ya mtandao unaungwa mkono tu kwa kutumia Google Chrome. Vivinjari vingine vina vizuizi vinavyozuia akiba ya kiasi kikubwa cha data ya ramani, na inaweza kuwa na matatizo mengine.
Tafadhali <5>pakua Google Chrome5>",
+ "Offline Surveys": "Uchunguzi wa Nje ya Mtandao",
+ "offlineResponseCount": "{{count}} majibu ya nje ya mtandao yaliyokusanywa",
+ "offlineResponseCount_plural": "{{count}} majibu ya nje ya mtandao yaliyokusanywa",
+ "Once online, you can resubmit from the this page, the begining of the survey, or from the SeaSketch homepage.": "Mara moja mtandaoni, unaweza kuwasilisha tena kutoka ukurasa huu, mwanzo wa utafiti, au kutoka kwa ukurasa wa nyumbani wa SeaSketch.",
+ "Pending Survey Responses": "Majibu ya Utafiti wa Kusubiri",
+ "questionCount": "Swali la {{count}}",
+ "questionCount_plural": "Maswali ya {{count}}",
+ "Ready for offline use": "Tayari kwa matumizi ya nje ya mtandao",
+ "Reload cache": "Pakia upya akiba",
+ "Responses you submit will be associated with the account listed below. If this is not correct, please <2>sign out2> and login from the correct account.": "Majibu unayowasilisha yatahusishwa na akaunti iliyoorodheshwa hapa chini. Ikiwa hii sio sahihi, tafadhali <2> saini2> na uingie kutoka kwa akaunti sahihi.",
+ "ResponsesSubmitted": "Iliyowasilishwa {{count}} Response",
+ "ResponsesSubmitted_plural": "Majibu ya {{count}}",
+ "SeaSketch can cache selected surveys for use offline in the field. You will need to make sure that Data Caching is set to \"Improved Performance\" or higher to enable this functionality.": "SeaSketch inaweza kuhifadhi tafiti zilizochaguliwa kwa matumizi nje ya mtandao katika uwanja. Utahitaji kuhakikisha kuwa Caching ya Data imewekwa kwa \"Utendaji Ulioboreshwa\" au wa juu ili kuwezesha utendaji huu.",
+ "SeaSketch logo": "Nembo ya SeaSketch",
+ "Select files": "Teua faili",
+ "Sign In": "Ingia ndani",
+ "Submit Offline Survey Responses": "Wasilisha Majibu ya Utafiti wa Nje ya Mtandao",
+ "Submit Responses": "Wasilisha Majibu",
+ "Submit responses now": "Wasilisha majibu kwa sasa",
+ "Submit them now": "Wasilisha kwa sasa",
+ "SubmitResponsesTitle": "Wasilisha {{count}} Majibu ya Utafiti wa Nje ya Mtandao",
+ "SubmitResponsesTitle_plural": "Wasilisha {{count}} Majibu ya Utafiti wa Nje ya Mtandao",
+ "support files": "faili za msaada",
+ "Survey responses collected while offline are stored in your browser cache and can be submitted to the SeaSketch server now that you are online. ": "Majibu ya utafiti yaliyokusanywa wakati nje ya mtandao yamehifadhiwa kwenye kashe ya kivinjari chako na yanaweza kuwasilishwa kwa seva ya SeaSketch sasa kwa kuwa uko mtandaoni. ",
+ "Survey-Related Maps": "Ramani zinazohusiana na utafiti",
+ "These responses have been saved to your device but will need to be resubmitted to the SeaSketch server once you are back online. You can continue to collect additional responses until then.": "Majibu haya yamehifadhiwa kwenye kifaa chako lakini yatahitaji kuwasilishwa tena kwenye seva ya SeaSketch mara tu utakaporudi mtandaoni. Unaweza kuendelea kukusanya majibu ya ziada hadi wakati huo.",
+ "These settings cannot be altered when offline.": "Mipangilio hii haiwezi kubadilishwa wakati nje ya mtandao.",
+ "This file is not the most up to date tile package. Consider downloading the newer package instead.": "Faili hii sio kifurushi cha kigae kilichosasishwa zaidi. Fikiria kupakua kifurushi kipya zaidi badala yake.",
+ "This map has been downloaded and can be used offline, but there are updates available.": "Ramani hii imepakuliwa na inaweza kutumika nje ya mtandao, lakini kuna sasisho zinazopatikana.",
+ "This map has been downloaded and is ready for offline use": "Ramani hii imepakuliwa na iko tayari kwa matumizi ya nje ya mtandao",
+ "This tile package is not related to any current maps, and will not be imported": "Kifurushi hiki cha tile hakihusiani na ramani yoyote ya sasa, na haitaingizwa",
+ "This tile package was generated for a different project": "Kifurushi hiki cha tile kilizalishwa kwa mradi tofauti",
+ "Tile Packages": "Vifurushi vya Tile",
+ "Update": "Sasisha",
+ "Update available": "Sasisha inapatikana",
+ "Update Map": "Ramani ya Sasisha",
+ "updatedAt": "ImesasishwaAt",
+ "Used in ": "Inatumika katika ",
+ "WelcomeOfflineResponseCount": "Umekusanya majibu {{count}} ukiwa nje ya mtandao.",
+ "WelcomeOfflineResponseCount_plural": "Umekusanya majibu {{count}} ukiwa nje ya mtandao.",
+ "WelcomeOfflineResponseCountWhenOffline": "Uko nje ya mtandao na umekusanya majibu ya {{count}} hadi sasa.",
+ "WelcomeOfflineResponseCountWhenOffline_plural": "Uko nje ya mtandao na umekusanya majibu {{count}} hadi sasa.",
+ "When downloading maps, be sure to leave the browser window open and prevent your computer from going to sleep until after the process is complete. Only one map can be downloaded at a time.": "Wakati wa kupakua ramani, hakikisha kuacha dirisha la kivinjari wazi na uzuie kompyuta yako kulala hadi baada ya mchakato kukamilika. Ramani moja tu inaweza kupakuliwa kwa wakati mmoja.",
+ "You appear to be offline.": "Unaonekana kuwa nje ya mtandao.",
+ "You can also prepare offline maps using mbtiles packages provided by an admin.": "Unaweza pia kuandaa ramani za nje ya mtandao kwa kutumia vifurushi vya mbtiles vilivyotolewa na msimamizi.",
+ "You have offline survey responses waiting to be submitted": "Una majibu ya uchunguzi wa nje ya mtandao yanayosubiri kuwasilishwa",
+ "You will need to be connected to the internet to submit survey responses.": "Utahitaji kuunganishwa kwenye mtandao ili kuwasilisha majibu ya utafiti.",
+ "You will need to be signed in before submitting survey responses.": "Utahitaji kuingia kabla ya kuwasilisha majibu ya uchunguzi.",
+ "You will not be able to use these maps until downloaded again. If map data is shared by multiple basemaps, this operation will clear data for all related basemaps.": "Hutaweza kutumia ramani hizi hadi kupakuliwa tena. Ikiwa data ya ramani inashirikiwa na ramani nyingi za msingi, operesheni hii itaondoa data kwa msingi wote unaohusiana."
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/sidebar.json b/packages/client/src/lang/sw/sidebar.json
new file mode 100644
index 000000000..88416df06
--- /dev/null
+++ b/packages/client/src/lang/sw/sidebar.json
@@ -0,0 +1,18 @@
+{
+ "Administration": "Utawala",
+ "Cache Settings": "Mipangilio ya Cache",
+ "Contact support": "Msaada wa mawasiliano",
+ "Contact Us": "Wasiliana Nasi",
+ "Discussion Forums": "Mabaraza ya Majadiliano",
+ "Language": "Lugha",
+ "Maps": "Ramani",
+ "My Profile": "Wasifu wangu",
+ "Overlay Layers": "Tabaka za Kufunika",
+ "Powered by": "Imewezeshwa na",
+ "Project Admin Dashboard": "Dashibodi ya Msimamizi wa Mradi",
+ "Sign In": "Ingia ndani",
+ "Sign Out": "Ishara ya nje",
+ "Sketches": "Sketches",
+ "Sketching Tools": "Zana za Kuchora",
+ "Terms of Use": "Masharti ya Matumizi"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/sketching.json b/packages/client/src/lang/sw/sketching.json
new file mode 100644
index 000000000..551f5e67c
--- /dev/null
+++ b/packages/client/src/lang/sw/sketching.json
@@ -0,0 +1,42 @@
+{
+ "Are you sure you want to delete \"{{name}}\"?": "Una uhakika unataka kufuta \"{{name}}\"?",
+ "Are you sure you want to start over and redraw your sketch?": "Una uhakika unataka kuanza tena na kuchora tena mchoro wako?",
+ "Cancel": "Katisha",
+ "Choose a sketch to share...": "Chagua mchoro wa kushiriki...",
+ "Copy": "Nakili",
+ "Create": "Unda",
+ "Create New...": "Unda mpya...",
+ "created this sketch on": "iliunda mchoro huu kwenye",
+ "Delete": "Futa",
+ "Delete Geometry": "Futa Jiometri",
+ "edit": "Hariri",
+ "Edit": "Hariri",
+ "Export as GeoJSON": "Uuzaji wa nje kama GeoJSON",
+ "Finish using the measurement tool before continuing to sketch.": "Maliza kutumia zana ya kipimo kabla ya kuendelea kuchora.",
+ "Folder": "Kabrasha",
+ "hide": "Ficha",
+ "in": "Katika",
+ "last updated this sketch on": "Ilisasisha mwisho mchoro huu kwenye",
+ "Name": "Jina",
+ "New": "Mpya",
+ "Please complete your geometry first": "Tafadhali kamilisha jiometri yako kwanza",
+ "Please complete your submission first.": "Tafadhali kamilisha uwasilishaji wako kwanza.",
+ "Processing your sketch. This should only take a moment.": "Usindikaji wa mchoro wako. Hii inapaswa kuchukua muda tu.",
+ "Rename {{folder.name}}": "Badilisha jina {{folder.name}}",
+ "Rename Folder": "Badilisha jina la folda",
+ "Reports not configured": "Ripoti ambazo hazijasanidiwa",
+ "Share": "Kushiriki",
+ "shared this sketch on": "Shiriki mchoro huu kwenye",
+ "SignInToSketch": "Tafadhali <2>ingia2> au <6>unda akaunti6> ili kuanza kuunda michoro.",
+ "Submit": "Wasilisha",
+ "View Attributes": "Tazama Sifa",
+ "View Attributes and Reports": "Tazama Sifa na Ripoti",
+ "view reports": "Tazama ripoti",
+ "View Reports": "Tazama Ripoti",
+ "Wait until processing is complete": "Subiri mpaka mchakato utakapokamilika",
+ "What would you like to name your folder?": "Ungependa kutaja folda yako nini?",
+ "You": "Wewe",
+ "You must finish your geometry first": "Lazima umalize jiometri yako kwanza",
+ "You must fix problems with your geometry first": "Lazima urekebishe matatizo na jiometri yako kwanza",
+ "Zoom to": "Kuza kwa"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/surveys.json b/packages/client/src/lang/sw/surveys.json
new file mode 100644
index 000000000..553f63435
--- /dev/null
+++ b/packages/client/src/lang/sw/surveys.json
@@ -0,0 +1,98 @@
+{
+ "Add": "Ongeza",
+ "Agree to terms": "Kukubaliana na masharti",
+ "Are you sure you no longer want to share data with this project? Your previous answers will be lost.": "Je, una uhakika kwamba hutaki tena kushiriki data na mradi huu? Majibu yako ya awali yatapotea.",
+ "Are you sure you want to delete this shape?": "Una uhakika unataka kufuta sura hii?",
+ "AreaCount": "{{count}} eneo",
+ "AreaCount_plural": "Maeneo ya {{count}}",
+ "Average": "Wastani",
+ "Back to Homepage": "Rudi kwenye ukurasa wa kwanza",
+ "Back to List": "Rudi kwenye Orodha",
+ "Basemap": "Ramani ya msingi",
+ "Begin": "Kuanza",
+ "Cancel": "Katisha",
+ "Cancel measurement": "Katisha kipimo",
+ "Change choices": "Badilisha uchaguzi",
+ "Close": "Funga",
+ "Complete Submission": "Uwasilishaji Kamili",
+ "Component is misconfigured. Document url required.": "Sehemu imesanidiwa vibaya. Hati url inahitajika.",
+ "ContactForAssistance": "Wasiliana <1>support@seasketch.org1> kwa msaada.",
+ "Continue Practice Mode": "Endelea Hali ya Mazoezi",
+ "Copied URL": "URL iliyonakiliwa",
+ "Count My Response": "Hesabu Majibu Yangu",
+ "Data Sharing Agreement": "Mkataba wa Kushiriki Data",
+ "Delete": "Futa",
+ "Do not agree": "Usikubali",
+ "Does not appear to be a valid email": "Haionekani kuwa barua pepe halali",
+ "Done": "Kufanyika",
+ "Done Editing": "Uhariri wa Kufanywa",
+ "Edit": "Hariri",
+ "Edit on Map": "Hariri kwenye Ramani",
+ "Enable Practice Mode": "Wezesha Hali ya Mazoezi",
+ "Error saving response": "Jibu la kuokoa kosa",
+ "Expand Map": "Panua Ramani",
+ "Facilitated Response": "Majibu yaliyowezeshwa",
+ "Finish drawing your shape first. Afterwards you will be able to use the measure tool.": "Maliza kuchora sura yako kwanza. Baada ya hapo utaweza kutumia zana ya kupima.",
+ "Finish Sector": "Sekta ya Kumaliza",
+ "Finish Shape": "Umbo la Kumaliza",
+ "Focus on location": "Kuzingatia mahali",
+ "Focus on shapes": "Kuzingatia maumbo",
+ "High": "Juu",
+ "If enabled, the survey will prompt for both a respondent name and the name of the facilitator.": "Ikiwa imewezeshwa, utafiti utachochea jina la mhojiwa na jina la mwezeshaji.",
+ "If required, users must click to open the attached document before agreeing": "Ikiwa inahitajika, watumiaji lazima bonyeza ili kufungua hati iliyoambatishwa kabla ya kukubaliana",
+ "Invalid shape": "Umbo batili",
+ "Invalid Shape": "Umbo batili",
+ "Language": "Lugha",
+ "Low": "Chini",
+ "Measure": "Kupima",
+ "New Shape": "Umbo Jipya",
+ "Next": "Ijayo",
+ "Next Question": "Swali lifuatalo",
+ "Next sector": "Sekta inayofuata",
+ "No": "La",
+ "none": "Hakuna",
+ "Number required": "Namba inayohitajika",
+ "OfflineInstructions": "Hatuwezi kuwasilisha majibu yako mpaka uunganishwe kwenye mtandao. Tafadhali angalia uhusiano wako. Unaweza kuonyesha upya ukurasa huu kwa usalama.",
+ "Optional Layers": "Tabaka za hiari",
+ "Photo by <2>{{name}}2> on <6>Unsplash6>": "Picha na <2>{{name}}2> kwenye <6>Unsplash6>",
+ "Please complete your shape on the map": "Tafadhali jaza umbo lako kwenye ramani",
+ "Please enter your full name in the signature field": "Tafadhali ingiza jina lako kamili katika uwanja wa saini",
+ "Please fill in required fields": "Tafadhali jaza sehemu zinazohitajika",
+ "Please fix problems with your shape first.": "Tafadhali rekebisha matatizo na sura yako kwanza.",
+ "Please open the attached terms before agreeing": "Tafadhali fungua masharti yaliyoambatishwa kabla ya kukubaliana",
+ "Practice": "Mazoezi",
+ "Practice Mode": "Hali ya Mazoezi",
+ "Practice mode saves your responses seperately so that they are not counted in the survey results.": "Hali ya mazoezi huokoa majibu yako kwa utulivu ili yasihesabiwe katika matokeo ya utafiti.",
+ "Practice responses are stored seperately in the database and not counted in analyses.": "Majibu ya mazoezi huhifadhiwa kwa seperately katika hifadhidata na haijahesabiwa katika uchambuzi.",
+ "Previous Question": "Swali la awali",
+ "RepeatSubmission": "Wasilisha Tena",
+ "Required": "Inayohitajika",
+ "Required field": "Uga unaohitajika",
+ "Reset Survey": "Weka upya Utafiti",
+ "Reset view": "Weka upya mwonekano",
+ "ResetSurvey": "Kuweka upya itafuta data yako yote iliyoingizwa hapo awali ili uweze kuanza utafiti tena katika hali tupu. Kitendo hiki hakiwezi kutenduliwa.",
+ "Resubmit": "Kuwasilisha upya",
+ "Return to ": "Rudi kwenye ",
+ "Return to project": "Kurudi kwenye mradi",
+ "Return to Survey": "Rudi kwenye Utafiti",
+ "Save": "Hifadhi",
+ "Select a language": "Chagua lugha",
+ "Select an option...": "Chagua chaguo...",
+ "Selection required": "Uchaguzi unahitajika",
+ "Settings": "Vipimo",
+ "Show scale bar": "Onyesha mwambaa wa kiwango",
+ "Skip Question": "Swali la Ruka",
+ "Skip to next question": "Ruka kwa swali linalofuata",
+ "Submitting Your Response": "Kuwasilisha majibu yako",
+ "Subtract": "Kuondoa",
+ "Survey not found": "Utafiti haukupatikana",
+ "Survey Settings": "Mipangilio ya Utafiti",
+ "Take Survey": "Chukua Utafiti",
+ "This survey either does not exist or your account does not have access to it. Surveys marked as draft require special permission to access.": "Utafiti huu haupo au akaunti yako haina ufikiaji wake. Utafiti uliowekwa alama kama rasimu unahitaji ruhusa maalum ya kufikia.",
+ "This will delete your entire shape. Are you sure?": "Hii itafuta sura yako yote. Una uhakika?",
+ "Total": "Jumla",
+ "UnsubmittedResponse": "Jibu lako ni salama kwenye kifaa hiki, lakini itahitaji kuwasilishwa kwa seva kabla ya kuhesabiwa.",
+ "View Map": "Tazama Ramani",
+ "Yes": "Ndiyo",
+ "You Are Offline": "Wewe ni nje ya mtandao"
+}
\ No newline at end of file
diff --git a/packages/client/src/lang/sw/translation.json b/packages/client/src/lang/sw/translation.json
new file mode 100644
index 000000000..190de3bee
--- /dev/null
+++ b/packages/client/src/lang/sw/translation.json
@@ -0,0 +1,59 @@
+{
+ "Add Data": "Ongeza Data",
+ "Add Mapbox Vector Tiles by URL": "Ongeza Vigae vya Vekta ya Mapbox kwa URL",
+ "Add Remote GeoJSON": "Ongeza GeoJSON ya Mbali",
+ "Add service to project": "Ongeza huduma kwenye mradi",
+ "Basemap": "Ramani ya msingi",
+ "Cancel": "Katisha",
+ "Close": "Funga",
+ "Connect to data services": "Unganisha kwenye huduma za data",
+ "Creating basemap...": "Kuunda ramani ya msingi...",
+ "Creating thumbnail...": "Make Thumbnail...",
+ "Drop Files Here to Upload": "Achia Faili Hapa Kupakia",
+ "Edit": "Hariri",
+ "Error importing service": "Huduma ya kuagiza kosa",
+ "Error importing service. Could not generate thumbnail image": "Huduma ya kuagiza kosa. Haikuweza kutengeneza picha ya kijipicha",
+ "Esri ArcGIS service...": "Huduma ya Esri ArcGIS...",
+ "Evaluate service": "Tathmini ya huduma",
+ "GeoJSON Location": "Mahali pa GeoJSON",
+ "Has changes since last publish": "Ina mabadiliko tangu kuchapishwa kwa mwisho",
+ "Host data on SeaSketch": "Data ya mwenyeji kwenye SeaSketch",
+ "Import layer": "Safu ya kuagiza",
+ "Import service again": "Huduma ya kuagiza tena",
+ "Import this tiled service as a...": "Ingiza huduma hii ya tiled kama ...",
+ "Imported": "Nje",
+ "Invalid URL": "URL batili",
+ "Layers": "Tabaka",
+ "Legend": "Maelezo mafupi",
+ "Map tiles will be displayed below all overlay layers, and the basemap is accessible from the Maps tab.": "Vigae vya ramani vitaonyeshwa chini ya tabaka zote za kufunika, na ramani ya msingi inapatikana kutoka kwa kichupo cha Ramani.",
+ "No changes": "Hakuna mabadiliko",
+ "No data was found at the provided URL. Check the URL and try again.": "Hakuna data iliyopatikana kwenye URL iliyotolewa. Angalia URL na ujaribu tena.",
+ "No map services found": "Hakuna huduma za ramani zilizopatikana",
+ "No map services in this folder": "Hakuna huduma za ramani katika folda hii",
+ "No vector layers found. Disable vector request preference to see raster layers.": "Hakuna tabaka za vector zilizopatikana. Lemaza ombi la vector upendeleo ili kuona tabaka za raster.",
+ "Overlay Layer": "Tabaka ya Kufunika",
+ "Parts of shapefiles cannot be uploaded directly. To upload a shapefile, create a .zip file with all related files (.shp, .prj, .shx, etc) and upload that zipfile.": "Sehemu za faili za umbo haziwezi kupakiwa moja kwa moja. Ili kupakia faili ya sura, unda faili ya .zip na faili zote zinazohusiana (.shp, .prj, .shx, nk) na upakie faili hiyo ya zip.",
+ "Quota Exceeded": "Quota Imezidi",
+ "Remote GeoJSON...": "GeoJSON ya mbali...",
+ "SeaSketch currently supports vector data in GeoJSON, Shapefile (zipped), GeoTiff, and FlatGeobuf formats.": "SeaSketch kwa sasa inasaidia data ya vector katika GeoJSON, Shapefile (zipped), GeoTiff, na muundo wa FlatGeobuf.",
+ "Service imported": "Huduma iliyoingizwa",
+ "Settings": "Vipimo",
+ "Starting upload": "Kuanza kupakia",
+ "Submit": "Wasilisha",
+ "The <2>PMTiles2> format is an archive of all the tiles used to render this layer in SeaSketch.": "Muundo wa <2>PMTiles2> ni kumbukumbu ya tiles zote zinazotumiwa kutoa safu hii katika SeaSketch.",
+ "This appears to be a file type which SeaSketch does not support for spatial uploads.": "Hii inaonekana kuwa aina ya faili ambayo SeaSketch haiauni kwa upakiaji wa anga.",
+ "This appears to be an unsupported raster file type. For raster data, upload a GeoTiff.": "Hii inaonekana kuwa aina ya faili ya raster isiyotumika. Kwa data ya raster, pakia GeoTiff.",
+ "This appears to be only part of a shapefile. To upload shapefiles, create a .zip file with all related files (.shp, .prj, .shx, etc) and upload that zipfile.": "Hii inaonekana kuwa sehemu tu ya faili ya sura. Ili kupakia faili za umbo, unda faili ya .zip na faili zote zinazohusiana (.shp, .prj, .shx, nk) na upakie faili hiyo ya zipfile.",
+ "This GeoJSON contains a GeometryCollection. It may not render as expected.": "GeoJSON hii ina GeometryCollection. Inaweza kuwa si kama ilivyotarajiwa.",
+ "This GeoJSON is over 1MB and may take a long time to load. Consider downloading the data and uploading to SeaSketch so that it can be tiled.": "GeoJSON hii ni zaidi ya 1MB na inaweza kuchukua muda mrefu kupakia. Fikiria kupakua data na kupakia kwenye SeaSketch ili iweze kupitiwa.",
+ "This GeoJSON took over 2 seconds to load. Consider downloading the data and uploading to SeaSketch for better performance.": "GeoJSON hii ilichukua zaidi ya sekunde 2 kupakia. Fikiria kupakua data na kupakia kwenye SeaSketch kwa utendaji bora.",
+ "This response contains cache directives instructing users to re-download the dataset each time it is displayed. Consider using long-lived cache headers to improve performance.": "Jibu hili lina maagizo ya kache yanayoelekeza watumiaji kupakua tena dataset kila wakati inapoonyeshwa. Fikiria kutumia vichwa vya kache vya muda mrefu ili kuboresha utendaji.",
+ "This service has already been added to your project's table of contents. Are you sure you want to import it again?": "Huduma hii tayari imeongezwa kwenye jedwali la yaliyomo kwenye mradi wako. Je, una uhakika kwamba unataka kuinunua tena?",
+ "Upload spatial data files": "Pakia faili za data za anga",
+ "URL Template": "Kiolezo cha URL",
+ "Use this option if you would like to display these map tiles over an existing basemap. Best for tiled layers with alpha transparency.": "Tumia chaguo hili ikiwa ungependa kuonyesha vigae hivi vya ramani juu ya msingi uliopo. Bora kwa tabaka zilizo na uwazi wa alpha.",
+ "Vector tiles by URL...": "Vigae vya vector kwa URL...",
+ "View": "Mwoneko",
+ "You can speed up the process of finding tileset boundaries by moving the map to the approximate location of the dataset.": "Unaweza kuharakisha mchakato wa kutafuta mipaka ya tileset kwa kuhamisha ramani kwa eneo la takriban la dataset.",
+ "Zoom range": "Masafa ya Zoom"
+}
\ No newline at end of file