mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2025-11-11 21:12:42 +10:00
Compare commits
246 Commits
v3.6.2
...
v3.6.8-pat
| Author | SHA1 | Date | |
|---|---|---|---|
| 3a7b98d30e | |||
| 284a39aa77 | |||
| c14c9955dd | |||
| 4de787157a | |||
| 6bc6425a01 | |||
| 6051305908 | |||
| 5e13253454 | |||
| c1fd2b40e3 | |||
| fccf7a7b56 | |||
| 5098b094db | |||
| 7c1eb74aca | |||
| 7f9ede8ff0 | |||
| 172b23e429 | |||
| f287ca6183 | |||
| 7548e36aaf | |||
| 2f754616b4 | |||
| dc51f6f9b2 | |||
| 0cdac1d657 | |||
| c3cfe8ae7b | |||
| 08435c173b | |||
| 62cc2d6eac | |||
| 5a6f6e2b6c | |||
| 2dfa8c04a1 | |||
| 63e3f94d2d | |||
| 7f45a8cb7f | |||
| 4377ebb811 | |||
| ed3af6975b | |||
| 7904905a8b | |||
| bd2e6d2bf2 | |||
| ae4e9e688e | |||
| 78c45b7019 | |||
| 9a2fbbec4e | |||
| 93d751d9be | |||
| 9926ed2262 | |||
| 62220d20e7 | |||
| 2f6108cd29 | |||
| 7aeed37869 | |||
| ed99659b7b | |||
| 5e33d00910 | |||
| c00d0341e6 | |||
| 511ae036c2 | |||
| 1642ec9ba2 | |||
| 1115bc2b69 | |||
| 27e5c7811c | |||
| 3b739f0bb7 | |||
| d937ba2056 | |||
| de110d7de1 | |||
| b03229b5e0 | |||
| 280fc73c7b | |||
| 677ad2a115 | |||
| f394b26d18 | |||
| aab4e2e941 | |||
| f0f552a635 | |||
| 136e143e12 | |||
| 857e4b8670 | |||
| ff03d41d97 | |||
| 2bad37aaf3 | |||
| 3a40fbf78b | |||
| 49c638fb18 | |||
| 50e8d60773 | |||
| bf157a8d1a | |||
| c4f5955fcd | |||
| 86d33b0f21 | |||
| 56bca30639 | |||
| eed3b76959 | |||
| 615eb3ad5d | |||
| b505199319 | |||
| 91e55e642c | |||
| f549d8749a | |||
| f31123659e | |||
| 93633c9415 | |||
| 19b9fa4857 | |||
| a5c84214f9 | |||
| 65bb8b5ceb | |||
| 06a11a1f2a | |||
| 53eedc8500 | |||
| 4b2d9d7026 | |||
| 045145ed67 | |||
| ec27e5e6ab | |||
| 2faa15db5a | |||
| 2c2893d5fc | |||
| 19c7ebe8a4 | |||
| c24847ac0b | |||
| 7137694832 | |||
| 049de38da2 | |||
| 17019e446b | |||
| d73ee7b7f8 | |||
| 2c95dc2ac8 | |||
| e148dd3e82 | |||
| 0aa2d61c55 | |||
| 0b2c1ffd26 | |||
| a531e8cd89 | |||
| 152e386141 | |||
| 87189cd045 | |||
| 114b04a740 | |||
| 383cde53df | |||
| 9bf98d3c49 | |||
| e62f0a3f5e | |||
| 10fb7b143a | |||
| 67ba58e798 | |||
| 179cf99f83 | |||
| 81a51d487b | |||
| b41b50565a | |||
| 8cd073eb62 | |||
| f4f8502703 | |||
| 0d079d7b24 | |||
| 167f7c902f | |||
| 7c630df927 | |||
| b391c561e5 | |||
| 4dbe015fbf | |||
| bae35b2614 | |||
| 8b7719a198 | |||
| 39cf238de3 | |||
| 98855ae230 | |||
| ab92cbf21e | |||
| 388ab4e29a | |||
| bb18c59018 | |||
| 217ab6ab93 | |||
| 12690b33d7 | |||
| bff5173701 | |||
| 821813d90d | |||
| b1d3c4da5b | |||
| 39f962b440 | |||
| b1cfd4b7c8 | |||
| c98d4a6004 | |||
| a5ec1f8609 | |||
| b2c897660d | |||
| c1a7fe7354 | |||
| b628c4a21b | |||
| 5fb4935146 | |||
| ae5280435d | |||
| 6451609d8f | |||
| edfe79f580 | |||
| 5d7318d46d | |||
| 77428c1661 | |||
| a2e075df39 | |||
| 63af1d2b69 | |||
| 99c5016762 | |||
| 44ff6caf27 | |||
| 7d2981f7ce | |||
| fcc5dd4bad | |||
| a9fb995d39 | |||
| 31a85bfaa6 | |||
| 51151a601e | |||
| 9931b22313 | |||
| fdf6b76c21 | |||
| b4696301ed | |||
| 294d7b5dab | |||
| 0430920f56 | |||
| 5444b4f5ab | |||
| d649b7fc08 | |||
| 20b39c0b35 | |||
| 8b87b054ee | |||
| 5eb68e9e21 | |||
| ec2606d625 | |||
| 9055010f61 | |||
| 9763b5c270 | |||
| 75c3bfe9e5 | |||
| 7f39247655 | |||
| d6f11e7807 | |||
| 361a1e65d0 | |||
| 6fddbe0c59 | |||
| 3412711f27 | |||
| a4bfc17431 | |||
| 7c698ef9d2 | |||
| e929faf9b0 | |||
| e3ff18b6dd | |||
| 2734493ca4 | |||
| f0015143c6 | |||
| 8d97b195a0 | |||
| f30692196a | |||
| 242278edd1 | |||
| 162759c716 | |||
| f0c6bd16f5 | |||
| fac8a9d4ff | |||
| 9ff1ffb0b9 | |||
| 79d3ef1306 | |||
| f4a12285f5 | |||
| 120ad827ad | |||
| a129b2033f | |||
| 372e508936 | |||
| ce8ada2621 | |||
| d0563d2ec9 | |||
| dacd4e311c | |||
| d6d016ba5d | |||
| 407ac990ac | |||
| 895e9845fc | |||
| 859a44197d | |||
| 0b80f33d46 | |||
| f246a17038 | |||
| 10c13d54be | |||
| 66316b740b | |||
| ae94748abe | |||
| fe11be60d3 | |||
| 1d3e47adb2 | |||
| fdd5f373c4 | |||
| 0f99d6cdfb | |||
| 742865a66a | |||
| 12dcf04981 | |||
| c0d76eaf0e | |||
| 2f430a1d07 | |||
| 576b942027 | |||
| 7df777ad0c | |||
| e5e30f290a | |||
| dcb476c28b | |||
| e09f281461 | |||
| 293f008f0a | |||
| f9cd1c779f | |||
| d931590374 | |||
| 907ffacca0 | |||
| a263d54319 | |||
| 0d478e1286 | |||
| 08997a1728 | |||
| 688bb11844 | |||
| 0bf4e0b2ae | |||
| 60bbfb6703 | |||
| 706307b073 | |||
| 3be18636ff | |||
| b2ee2f9d09 | |||
| fe54a2388e | |||
| be170dd985 | |||
| 7fd26ad2c3 | |||
| ec30aff4d1 | |||
| 0b3023989b | |||
| 3b96348183 | |||
| 30080b23cd | |||
| b3ba1e5b56 | |||
| bf72b557ca | |||
| 344fcb1078 | |||
| ddd71567c1 | |||
| adc679a6e5 | |||
| 8f49536119 | |||
| 750fedbd74 | |||
| cd59ea7e9b | |||
| 5c1b44ddea | |||
| eb6450a9de | |||
| 0b620f41fc | |||
| 64e0e677d7 | |||
| 19ae1cf036 | |||
| c221cef77f | |||
| 77e3dc2b16 | |||
| 9c9368acd5 | |||
| 22b91d3f94 | |||
| d844092d0f | |||
| b3e118fb8b | |||
| fe37eb2791 |
@ -1,5 +0,0 @@
|
|||||||
ARG VARIANT="lts-bullseye"
|
|
||||||
|
|
||||||
FROM mcr.microsoft.com/vscode/devcontainers/javascript-node:0-${VARIANT}
|
|
||||||
|
|
||||||
RUN curl -f https://get.pnpm.io/v6.16.js | node - add --global pnpm
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "Node.js",
|
|
||||||
|
|
||||||
"build": {
|
|
||||||
"dockerfile": "Dockerfile",
|
|
||||||
"args": { "VARIANT": "16-bullseye" }
|
|
||||||
},
|
|
||||||
|
|
||||||
// Set *default* container specific settings.json values on container create.
|
|
||||||
"settings": {},
|
|
||||||
|
|
||||||
// Add the IDs of extensions you want installed when the container is created.
|
|
||||||
"extensions": ["dbaeumer.vscode-eslint", "esbenp.prettier-vscode", "lokalise.i18n-ally"],
|
|
||||||
|
|
||||||
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
|
||||||
"forwardPorts": [80, 5432],
|
|
||||||
|
|
||||||
// Use 'postCreateCommand' to run commands after the container is created.
|
|
||||||
"postCreateCommand": "pnpm install",
|
|
||||||
|
|
||||||
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
|
|
||||||
"remoteUser": "node",
|
|
||||||
|
|
||||||
"features": {
|
|
||||||
"docker-from-docker": "latest"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,3 +1,6 @@
|
|||||||
|
# Android App
|
||||||
|
/app
|
||||||
|
|
||||||
# Build Artifacts
|
# Build Artifacts
|
||||||
dist
|
dist
|
||||||
.next
|
.next
|
||||||
@ -22,6 +25,3 @@ node_modules
|
|||||||
Dockerfile
|
Dockerfile
|
||||||
.dockerignore
|
.dockerignore
|
||||||
docker-compose.yml
|
docker-compose.yml
|
||||||
|
|
||||||
# Android App
|
|
||||||
/app
|
|
||||||
|
|||||||
@ -4,8 +4,8 @@ TURBO_TOKEN=
|
|||||||
|
|
||||||
# Server + Client
|
# Server + Client
|
||||||
TZ=UTC
|
TZ=UTC
|
||||||
PUBLIC_URL=http://client:3000
|
PUBLIC_URL=http://localhost:3000
|
||||||
PUBLIC_SERVER_URL=http://server:3100
|
PUBLIC_SERVER_URL=http://localhost:3100
|
||||||
PUBLIC_GOOGLE_CLIENT_ID=
|
PUBLIC_GOOGLE_CLIENT_ID=
|
||||||
|
|
||||||
# Server + Database
|
# Server + Database
|
||||||
|
|||||||
@ -2,23 +2,11 @@
|
|||||||
"ignorePatterns": ["/app"],
|
"ignorePatterns": ["/app"],
|
||||||
"parser": "@typescript-eslint/parser",
|
"parser": "@typescript-eslint/parser",
|
||||||
"extends": ["plugin:@typescript-eslint/recommended"],
|
"extends": ["plugin:@typescript-eslint/recommended"],
|
||||||
"plugins": ["@typescript-eslint/eslint-plugin", "simple-import-sort", "unused-imports"],
|
"plugins": ["@typescript-eslint/eslint-plugin", "simple-import-sort"],
|
||||||
"rules": {
|
"rules": {
|
||||||
// ESLint
|
// ESLint
|
||||||
"no-unused-vars": "off",
|
"no-unused-vars": "off",
|
||||||
|
|
||||||
// Unused Imports
|
|
||||||
"unused-imports/no-unused-imports": "error",
|
|
||||||
"unused-imports/no-unused-vars": [
|
|
||||||
"warn",
|
|
||||||
{
|
|
||||||
"vars": "all",
|
|
||||||
"args": "none",
|
|
||||||
"varsIgnorePattern": "^_",
|
|
||||||
"argsIgnorePattern": "^_"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
|
|
||||||
// Simple Import Sort
|
// Simple Import Sort
|
||||||
"simple-import-sort/imports": "error",
|
"simple-import-sort/imports": "error",
|
||||||
"simple-import-sort/exports": "error",
|
"simple-import-sort/exports": "error",
|
||||||
|
|||||||
1
.github/FUNDING.yml
vendored
1
.github/FUNDING.yml
vendored
@ -1 +1,2 @@
|
|||||||
|
github: AmruthPillai
|
||||||
custom: https://paypal.me/RajaRajanA
|
custom: https://paypal.me/RajaRajanA
|
||||||
|
|||||||
36
.github/workflows/docker-build-push.yml
vendored
36
.github/workflows/docker-build-push.yml
vendored
@ -15,13 +15,22 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout the repository
|
- name: Checkout the repository
|
||||||
uses: actions/checkout@v3.0.2
|
uses: actions/checkout@v3.1.0
|
||||||
with:
|
with:
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
|
|
||||||
- id: version
|
- id: version
|
||||||
name: Get Version
|
name: Get Version
|
||||||
run: echo ::set-output name=tag::${GITHUB_REF#refs/*/}
|
run: echo "version=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v2.0.0
|
||||||
|
|
||||||
|
- id: buildx
|
||||||
|
name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v2.0.0
|
||||||
|
with:
|
||||||
|
install: true
|
||||||
|
|
||||||
- name: Login to Docker Hub
|
- name: Login to Docker Hub
|
||||||
uses: docker/login-action@v2.0.0
|
uses: docker/login-action@v2.0.0
|
||||||
@ -42,11 +51,12 @@ jobs:
|
|||||||
context: .
|
context: .
|
||||||
push: true
|
push: true
|
||||||
file: client/Dockerfile
|
file: client/Dockerfile
|
||||||
|
platforms: linux/amd64,linux/arm64
|
||||||
tags: |
|
tags: |
|
||||||
amruthpillai/reactive-resume:client-latest
|
amruthpillai/reactive-resume:client-latest
|
||||||
amruthpillai/reactive-resume:client-${{ steps.version.outputs.tag }}
|
amruthpillai/reactive-resume:client-${{ env.version }}
|
||||||
ghcr.io/amruthpillai/reactive-resume:client-latest
|
ghcr.io/amruthpillai/reactive-resume:client-latest
|
||||||
ghcr.io/amruthpillai/reactive-resume:client-${{ steps.version.outputs.tag }}
|
ghcr.io/amruthpillai/reactive-resume:client-${{ env.version }}
|
||||||
|
|
||||||
server:
|
server:
|
||||||
name: Server
|
name: Server
|
||||||
@ -58,13 +68,22 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout the repository
|
- name: Checkout the repository
|
||||||
uses: actions/checkout@v3.0.2
|
uses: actions/checkout@v3.1.0
|
||||||
with:
|
with:
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
|
|
||||||
- id: version
|
- id: version
|
||||||
name: Get Version
|
name: Get Version
|
||||||
run: echo ::set-output name=tag::${GITHUB_REF#refs/*/}
|
run: echo "version=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v2.0.0
|
||||||
|
|
||||||
|
- id: buildx
|
||||||
|
name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v2.0.0
|
||||||
|
with:
|
||||||
|
install: true
|
||||||
|
|
||||||
- name: Login to Docker Hub
|
- name: Login to Docker Hub
|
||||||
uses: docker/login-action@v2.0.0
|
uses: docker/login-action@v2.0.0
|
||||||
@ -85,8 +104,9 @@ jobs:
|
|||||||
context: .
|
context: .
|
||||||
push: true
|
push: true
|
||||||
file: server/Dockerfile
|
file: server/Dockerfile
|
||||||
|
platforms: linux/amd64,linux/arm64
|
||||||
tags: |
|
tags: |
|
||||||
amruthpillai/reactive-resume:server-latest
|
amruthpillai/reactive-resume:server-latest
|
||||||
amruthpillai/reactive-resume:server-${{ steps.version.outputs.tag }}
|
amruthpillai/reactive-resume:server-${{ env.version }}
|
||||||
ghcr.io/amruthpillai/reactive-resume:server-latest
|
ghcr.io/amruthpillai/reactive-resume:server-latest
|
||||||
ghcr.io/amruthpillai/reactive-resume:server-${{ steps.version.outputs.tag }}
|
ghcr.io/amruthpillai/reactive-resume:server-${{ env.version }}
|
||||||
|
|||||||
88
.github/workflows/docker-build.yml
vendored
88
.github/workflows/docker-build.yml
vendored
@ -1,88 +0,0 @@
|
|||||||
name: Build Docker Image
|
|
||||||
|
|
||||||
on: pull_request
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
client:
|
|
||||||
name: Client
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
env:
|
|
||||||
TURBO_TEAM: ${{ secrets.TURBO_TEAM }}
|
|
||||||
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout the repository
|
|
||||||
uses: actions/checkout@v3.0.2
|
|
||||||
with:
|
|
||||||
fetch-depth: 2
|
|
||||||
|
|
||||||
- id: vars
|
|
||||||
name: Get Short SHA
|
|
||||||
run: echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
|
|
||||||
|
|
||||||
- name: Set up QEMU
|
|
||||||
uses: docker/setup-qemu-action@v2.0.0
|
|
||||||
|
|
||||||
- id: buildx
|
|
||||||
name: Set up Docker Buildx
|
|
||||||
uses: docker/setup-buildx-action@v2.0.0
|
|
||||||
with:
|
|
||||||
install: true
|
|
||||||
|
|
||||||
- id: version
|
|
||||||
name: Get Version
|
|
||||||
run: echo ::set-output name=tag::${GITHUB_REF#refs/*/}
|
|
||||||
|
|
||||||
- name: Build Client Image
|
|
||||||
uses: docker/build-push-action@v3.1.1
|
|
||||||
with:
|
|
||||||
context: .
|
|
||||||
push: false
|
|
||||||
file: client/Dockerfile
|
|
||||||
platforms: linux/amd64,linux/arm64
|
|
||||||
tags: |
|
|
||||||
amruthpillai/reactive-resume:client-latest
|
|
||||||
amruthpillai/reactive-resume:client-${{ steps.vars.outputs.sha_short }}
|
|
||||||
ghcr.io/amruthpillai/reactive-resume:client-latest
|
|
||||||
ghcr.io/amruthpillai/reactive-resume:client-${{ steps.vars.outputs.sha_short }}
|
|
||||||
|
|
||||||
server:
|
|
||||||
name: Server
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
env:
|
|
||||||
TURBO_TEAM: ${{ secrets.TURBO_TEAM }}
|
|
||||||
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout the repository
|
|
||||||
uses: actions/checkout@v3.0.2
|
|
||||||
with:
|
|
||||||
fetch-depth: 2
|
|
||||||
|
|
||||||
- name: Set up QEMU
|
|
||||||
uses: docker/setup-qemu-action@v2.0.0
|
|
||||||
|
|
||||||
- id: buildx
|
|
||||||
name: Set up Docker Buildx
|
|
||||||
uses: docker/setup-buildx-action@v2.0.0
|
|
||||||
with:
|
|
||||||
install: true
|
|
||||||
|
|
||||||
- id: version
|
|
||||||
name: Get Version
|
|
||||||
run: echo ::set-output name=tag::${GITHUB_REF#refs/*/}
|
|
||||||
|
|
||||||
- name: Build Server Image
|
|
||||||
uses: docker/build-push-action@v3.1.1
|
|
||||||
with:
|
|
||||||
context: .
|
|
||||||
push: false
|
|
||||||
file: server/Dockerfile
|
|
||||||
platforms: linux/amd64,linux/arm64
|
|
||||||
tags: |
|
|
||||||
amruthpillai/reactive-resume:server-latest
|
|
||||||
amruthpillai/reactive-resume:server-${{ steps.vars.outputs.sha_short }}
|
|
||||||
ghcr.io/amruthpillai/reactive-resume:server-latest
|
|
||||||
ghcr.io/amruthpillai/reactive-resume:server-${{ steps.vars.outputs.sha_short }}
|
|
||||||
@ -1,3 +1,6 @@
|
|||||||
|
# Android App
|
||||||
|
/app
|
||||||
|
|
||||||
# Schema
|
# Schema
|
||||||
schema/dist
|
schema/dist
|
||||||
|
|
||||||
@ -23,11 +26,4 @@ pnpm-lock.yaml
|
|||||||
# Docker
|
# Docker
|
||||||
Dockerfile
|
Dockerfile
|
||||||
.dockerignore
|
.dockerignore
|
||||||
docker-compose.yml
|
docker-compose.yml
|
||||||
|
|
||||||
# Android App
|
|
||||||
/app
|
|
||||||
|
|
||||||
# Docs
|
|
||||||
docs/build
|
|
||||||
docs/.docusaurus
|
|
||||||
26
.vscode/launch.json
vendored
26
.vscode/launch.json
vendored
@ -1,26 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "0.2.0",
|
|
||||||
"configurations": [
|
|
||||||
{
|
|
||||||
"type": "node",
|
|
||||||
"name": "Debug: Server",
|
|
||||||
"port": 9229,
|
|
||||||
"request": "attach",
|
|
||||||
"restart": true,
|
|
||||||
"protocol": "inspector",
|
|
||||||
"stopOnEntry": false
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Debug: Client",
|
|
||||||
"type": "node-terminal",
|
|
||||||
"request": "launch",
|
|
||||||
"command": "pnpm run dev:client",
|
|
||||||
"console": "integratedTerminal",
|
|
||||||
"serverReadyAction": {
|
|
||||||
"action": "debugWithChrome",
|
|
||||||
"pattern": "started server on .+, url: (https?://.+)",
|
|
||||||
"uriFormat": "%s"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
334
CHANGELOG.md
334
CHANGELOG.md
@ -1,334 +0,0 @@
|
|||||||
# Changelog
|
|
||||||
|
|
||||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
||||||
|
|
||||||
### [3.6.2](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.5.3...v3.6.2) (2022-08-25)
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- Implement Undo/Redo functionality across the resume builder section
|
|
||||||
|
|
||||||
### Improvements
|
|
||||||
|
|
||||||
- Update dependencies to the latest version
|
|
||||||
- Cleanup ESLint configuration, add tailwindCSS formatting
|
|
||||||
|
|
||||||
### [3.5.3](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.5.2...v3.5.3) (2022-08-11)
|
|
||||||
|
|
||||||
### [3.5.2](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.5.1...v3.5.2) (2022-08-04)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **client:** :dizzy: add Finnish language support ([16d19eb](https://github.com/AmruthPillai/Reactive-Resume/commit/16d19eb70f64f768304f352d0f87102d328b57c1))
|
|
||||||
|
|
||||||
### [3.5.1](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.5.0...v3.5.1) (2022-07-30)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **client:** :sparkles: ask for confirmation when resetting a resume ([4d43f6a](https://github.com/AmruthPillai/Reactive-Resume/commit/4d43f6a6427198e62e9fcb995f1a28c0ee4de71e))
|
|
||||||
* **docker:** :zap: remove ports from postgres docker instance ([07c91e9](https://github.com/AmruthPillai/Reactive-Resume/commit/07c91e9ac21e8ef120d08ab92363d8e48a55aaba))
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **server:** :zap: don't initialize sendgrid if the apikey is empty ([05d3f1f](https://github.com/AmruthPillai/Reactive-Resume/commit/05d3f1f06fbffd899269a5c4dea3c52cf408125f))
|
|
||||||
|
|
||||||
## [3.5.0](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.4.8...v3.5.0) (2022-07-30)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **client:** :bug: attempt to fix the one-off date issue ([5197f95](https://github.com/AmruthPillai/Reactive-Resume/commit/5197f954c0baed3daf1c7e2c79b607354ef42024))
|
|
||||||
* **client:** :bug: fix mui rendering of utc dates ([977fa72](https://github.com/AmruthPillai/Reactive-Resume/commit/977fa72ddeeeebf7463d43a820e85f783489a4dc))
|
|
||||||
|
|
||||||
### [3.4.8](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.4.7...v3.4.8) (2022-07-13)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **google:** add toast to display error message from google ([25cf594](https://github.com/AmruthPillai/Reactive-Resume/commit/25cf594eb948e1c2d6157028ee1fff2799df5f92))
|
|
||||||
|
|
||||||
### [3.4.7](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.4.6...v3.4.7) (2022-06-30)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **mui:** update mui datepickers to newer package ([bfb48e3](https://github.com/AmruthPillai/Reactive-Resume/commit/bfb48e3aa7e0575922841522edc1d38544d1884f))
|
|
||||||
|
|
||||||
### [3.4.6](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.4.5...v3.4.6) (2022-06-19)
|
|
||||||
|
|
||||||
## [3.6.0](https://github.com/dvd741-a/Reactive-Resume/compare/v3.3.4...v3.6.0) (2022-06-05)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **all:** upgrade to v3.4.0 ([87d381f](https://github.com/dvd741-a/Reactive-Resume/commit/87d381fe8eab9ca4624df5de6e8b9ab18a072b67))
|
|
||||||
* **i18n:** add Hungrarian (Magyar) language ([35fe4e2](https://github.com/dvd741-a/Reactive-Resume/commit/35fe4e27744b6f7325b25db2cf3b626ed8598623))
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **i18n:** fix language mismatch in exported pdf ([62fd63e](https://github.com/dvd741-a/Reactive-Resume/commit/62fd63e41fe10fba843a40fb08191f5944f2b2fc))
|
|
||||||
* **typeorm:** update typeorm to latest 0.2.x for secpatch ([5bdb92b](https://github.com/dvd741-a/Reactive-Resume/commit/5bdb92b1cff9e56879f9bbf31801d6554a00a8d5))
|
|
||||||
|
|
||||||
## [3.5.0](https://github.com/dvd741-a/Reactive-Resume/compare/v3.3.4...v3.5.0) (2022-06-05)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **all:** upgrade to v3.4.0 ([87d381f](https://github.com/dvd741-a/Reactive-Resume/commit/87d381fe8eab9ca4624df5de6e8b9ab18a072b67))
|
|
||||||
* **i18n:** add Hungrarian (Magyar) language ([35fe4e2](https://github.com/dvd741-a/Reactive-Resume/commit/35fe4e27744b6f7325b25db2cf3b626ed8598623))
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **i18n:** fix language mismatch in exported pdf ([62fd63e](https://github.com/dvd741-a/Reactive-Resume/commit/62fd63e41fe10fba843a40fb08191f5944f2b2fc))
|
|
||||||
* **typeorm:** update typeorm to latest 0.2.x for secpatch ([5bdb92b](https://github.com/dvd741-a/Reactive-Resume/commit/5bdb92b1cff9e56879f9bbf31801d6554a00a8d5))
|
|
||||||
|
|
||||||
### [3.4.5](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.4.4...v3.4.5) (2022-05-24)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **i18n:** fix language mismatch in exported pdf ([62fd63e](https://github.com/AmruthPillai/Reactive-Resume/commit/62fd63e41fe10fba843a40fb08191f5944f2b2fc))
|
|
||||||
|
|
||||||
## [3.4.4](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.4.3...v3.4.4) (2022-05-02)
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **i18n:** add Hungrarian (Magyar) language ([35fe4e2](https://github.com/AmruthPillai/Reactive-Resume/commit/35fe4e27744b6f7325b25db2cf3b626ed8598623))
|
|
||||||
|
|
||||||
### [3.4.3](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.4.2...v3.4.3) (2022-05-01)
|
|
||||||
|
|
||||||
### [3.4.2](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.4.1...v3.4.2) (2022-04-30)
|
|
||||||
|
|
||||||
### [3.4.1](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.4.0...v3.4.1) (2022-04-30)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **typeorm:** update typeorm to latest 0.2.x for secpatch ([5bdb92b](https://github.com/AmruthPillai/Reactive-Resume/commit/5bdb92b1cff9e56879f9bbf31801d6554a00a8d5))
|
|
||||||
|
|
||||||
### [3.4.0](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.3.3...v3.4.0) (2022-04-30)
|
|
||||||
|
|
||||||
### [3.3.4](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.3.3...v3.3.4) (2022-04-09)
|
|
||||||
|
|
||||||
### [3.3.3](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.3.2...v3.3.3) (2022-04-09)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **profile:** add XING profile icon ([1e59f73](https://github.com/AmruthPillai/Reactive-Resume/commit/1e59f73f79a91d0264c0d2108906ee89d4eb27f8)), closes [#821](https://github.com/AmruthPillai/Reactive-Resume/issues/821)
|
|
||||||
* **s3:** implement non-ephemeral storage through S3/DO Spaces ([feb911a](https://github.com/AmruthPillai/Reactive-Resume/commit/feb911aea06bacf58ea933d2803a2a89fe36e57b))
|
|
||||||
|
|
||||||
### [3.3.2](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.3.1...v3.3.2) (2022-04-08)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **types/react:** downgrade to <18 ([fc77b54](https://github.com/AmruthPillai/Reactive-Resume/commit/fc77b548d8d61530b2d158ff83f088bed12d5080))
|
|
||||||
|
|
||||||
### [3.3.1](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.3.0...v3.3.1) (2022-04-08)
|
|
||||||
|
|
||||||
## [3.3.0](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.11...v3.3.0) (2022-04-08)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **upgrade:** changes to code to support new template ([1df7810](https://github.com/AmruthPillai/Reactive-Resume/commit/1df78100ca0667ce9b7834cf2c25384eb21c67c2))
|
|
||||||
|
|
||||||
### What's Changed
|
|
||||||
* New Crowdin updates by @AmruthPillai in https://github.com/AmruthPillai/Reactive-Resume/pull/791
|
|
||||||
* Bump org.jetbrains.kotlin.android from 1.6.10 to 1.6.20 in /app by @dependabot in https://github.com/AmruthPillai/Reactive-Resume/pull/812
|
|
||||||
* New Crowdin updates by @AmruthPillai in https://github.com/AmruthPillai/Reactive-Resume/pull/806
|
|
||||||
* A new template - Leafish by @klejejs in https://github.com/AmruthPillai/Reactive-Resume/pull/811
|
|
||||||
* Automatic multi-platform Docker image build by @schklom in https://github.com/AmruthPillai/Reactive-Resume/pull/817
|
|
||||||
|
|
||||||
### New Contributors
|
|
||||||
* @klejejs made their first contribution in https://github.com/AmruthPillai/Reactive-Resume/pull/811
|
|
||||||
* @schklom made their first contribution in https://github.com/AmruthPillai/Reactive-Resume/pull/817
|
|
||||||
|
|
||||||
### [3.2.11](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.10...v3.2.11) (2022-03-28)
|
|
||||||
|
|
||||||
### [3.2.10](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.9...v3.2.10) (2022-03-24)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **i18n:** add portuguese (pt) language to i18n locales ([7f1c82c](https://github.com/AmruthPillai/Reactive-Resume/commit/7f1c82cd9185ebb44486a16132eb44d5c2fb747a))
|
|
||||||
|
|
||||||
### [3.2.9](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.8...v3.2.9) (2022-03-21)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **i18n:** add nl and ru i18n locales to app ([03cbf22](https://github.com/AmruthPillai/Reactive-Resume/commit/03cbf22c9bee96cac8f228830b67b44529b7ecee))
|
|
||||||
|
|
||||||
### [3.2.8](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.7...v3.2.8) (2022-03-18)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **client/theme:** add theme switcher to landing page ([8f5632c](https://github.com/AmruthPillai/Reactive-Resume/commit/8f5632c5ad0bc8a4b3028c2806365717fedd78c9))
|
|
||||||
* **flags:** introduce flags, disable_user_signups ([b6267d0](https://github.com/AmruthPillai/Reactive-Resume/commit/b6267d07ba2dcaed0da3946d136a0a9a01c441d5)), closes [#698](https://github.com/AmruthPillai/Reactive-Resume/issues/698)
|
|
||||||
* **i18n:** add Vietnamese language to i18n locales ([4390bcc](https://github.com/AmruthPillai/Reactive-Resume/commit/4390bccfb9764f2d2730ec3a124b7befb6792e9a))
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **client/create-rename-slug:** fix slug accepting apostrophes and other special characters ([1facd2a](https://github.com/AmruthPillai/Reactive-Resume/commit/1facd2ad111cd9d990c808b3956d3915e8711acd)), closes [#706](https://github.com/AmruthPillai/Reactive-Resume/issues/706)
|
|
||||||
* **disable_user_signups:** hide create account link under flag ([80acfe9](https://github.com/AmruthPillai/Reactive-Resume/commit/80acfe97c74bfa05b719285b19144144f3f7c5ba))
|
|
||||||
|
|
||||||
### [3.2.7](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.6...v3.2.7) (2022-03-18)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **i18n:** add Malayalam (മലയാളം) language to i18n locales ([3a2e62b](https://github.com/AmruthPillai/Reactive-Resume/commit/3a2e62be4c9acc14f17277c060cc9ea2c417a478))
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **printer/i18n:** fix dates not showing up in resume language when printing ([90321e1](https://github.com/AmruthPillai/Reactive-Resume/commit/90321e1284409ab9442883c04a9b4c591d36f95d)), closes [#729](https://github.com/AmruthPillai/Reactive-Resume/issues/729)
|
|
||||||
|
|
||||||
### [3.2.6](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.5...v3.2.6) (2022-03-17)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **client/auth/google:** disable google login/registration if GOOGLE_CLIENT_ID is not in ENV ([7f0ee40](https://github.com/AmruthPillai/Reactive-Resume/commit/7f0ee40af4acc7eb41514406ecee3218ace9e891)), closes [#724](https://github.com/AmruthPillai/Reactive-Resume/issues/724)
|
|
||||||
* **i18n:** add arabic language to i18n locale ([39fa6da](https://github.com/AmruthPillai/Reactive-Resume/commit/39fa6da5dd77ce2e12e81530fa18c2eac722c1f2))
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **i18n:** add missing languages to dayjs date wrapper locales ([9e6dafc](https://github.com/AmruthPillai/Reactive-Resume/commit/9e6dafc8cada5c01559894905996b81004bedaec)), closes [#719](https://github.com/AmruthPillai/Reactive-Resume/issues/719)
|
|
||||||
* **json-export:** add mimeType and charset to JSON export ([b3ff780](https://github.com/AmruthPillai/Reactive-Resume/commit/b3ff7805cd856a52900d9acef0554867d8ce0b01)), closes [#726](https://github.com/AmruthPillai/Reactive-Resume/issues/726)
|
|
||||||
* **linkedin:** fix skill modal crashing when importing from linkedin ([a02b85b](https://github.com/AmruthPillai/Reactive-Resume/commit/a02b85b4bb1c4a1499aacddeac7bc59bcb1f7adb)), closes [#718](https://github.com/AmruthPillai/Reactive-Resume/issues/718)
|
|
||||||
|
|
||||||
### [3.2.5](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.4...v3.2.5) (2022-03-16)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **i18n:** add danish, polish and turkish locales to i18n ([97e9432](https://github.com/AmruthPillai/Reactive-Resume/commit/97e9432d6bd887e666a3443fbfde9a92cef53965))
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **client/templates:** fix text veering off of artboard in most templates ([b2f1fb3](https://github.com/AmruthPillai/Reactive-Resume/commit/b2f1fb3a5502988a49c5cd3e496d9d165f5c1792)), closes [#702](https://github.com/AmruthPillai/Reactive-Resume/issues/702)
|
|
||||||
|
|
||||||
### [3.2.4](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.3...v3.2.4) (2022-03-14)
|
|
||||||
|
|
||||||
### [3.2.3](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.2...v3.2.3) (2022-03-14)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **client/import:** implement import json from reactive resume v2 ([42408ce](https://github.com/AmruthPillai/Reactive-Resume/commit/42408ce8c5ce55904854f9f6e0481889a01edfb8))
|
|
||||||
|
|
||||||
### [3.2.2](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.1...v3.2.2) (2022-03-14)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **client/skills:** make skill level optional ([02e396b](https://github.com/AmruthPillai/Reactive-Resume/commit/02e396bfdbf07ae75661f1e7e4e55060cacee7d0))
|
|
||||||
|
|
||||||
### [3.2.1](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.0...v3.2.1) (2022-03-14)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **i18n:** add Chinese (Simplified) language to locales ([549363b](https://github.com/AmruthPillai/Reactive-Resume/commit/549363bbe5bdd781699dea9506bd4baedf5740d1))
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **client/basics:** fix issue with overlapping photo filters on safari/webkit/iOS ([e6bda68](https://github.com/AmruthPillai/Reactive-Resume/commit/e6bda688ac3ba1c04e82721add92e755ea5386c3))
|
|
||||||
* **docker:** fix docker-compose for production grade deployments ([57f7edc](https://github.com/AmruthPillai/Reactive-Resume/commit/57f7edc13432a038c907afc6cb74b5182a9b2333))
|
|
||||||
|
|
||||||
## [3.2.0](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.1.4...v3.2.0) (2022-03-14)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **i18n:** add Bengali, Italian and other languages ([21931bc](https://github.com/AmruthPillai/Reactive-Resume/commit/21931bc324b5e2440baaaaa2e52a93b4f2c766f8))
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **app:** fix issue with external link redirection in android app ([b18120b](https://github.com/AmruthPillai/Reactive-Resume/commit/b18120b3f7223981e28c0441a6b7725787186edb))
|
|
||||||
* **client:** fix issue with react-query cache ([ed75a85](https://github.com/AmruthPillai/Reactive-Resume/commit/ed75a858279047dfd43152e041c1a09a625417f5))
|
|
||||||
|
|
||||||
### [3.1.4](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.1.3...v3.1.4) (2022-03-12)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **client:** exported pdf did not contain "Present" keyword with translations ([cf670af](https://github.com/AmruthPillai/Reactive-Resume/commit/cf670af4035dc9b462cf5b1aad06ca089cf1d40c))
|
|
||||||
* **client:** fix issues raised through lgtm alerts ([dfccb31](https://github.com/AmruthPillai/Reactive-Resume/commit/dfccb3130f889934d31196226be3d33e772f323b))
|
|
||||||
|
|
||||||
### [3.1.3](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.1.2...v3.1.3) (2022-03-12)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **server:** reform url for pdf generation and download ([6d55f91](https://github.com/AmruthPillai/Reactive-Resume/commit/6d55f917eab3cb2f5f3a90c5a18f03b625d60021)), closes [#661](https://github.com/AmruthPillai/Reactive-Resume/issues/661)
|
|
||||||
|
|
||||||
### [3.1.2](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.1.1...v3.1.2) (2022-03-12)
|
|
||||||
|
|
||||||
|
|
||||||
### CI
|
|
||||||
|
|
||||||
* **docker:**: include traefik routing and proxy to ensure server connections pass in local ([11cb066](https://github.com/AmruthPillai/Reactive-Resume/commit/11cb066573c6917857b79c028b97fcda1acaf90a))
|
|
||||||
|
|
||||||
### [3.1.1](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.1.0...v3.1.1) (2022-03-12)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **client:** add product hunt announcement banner ([b515fc3](https://github.com/AmruthPillai/Reactive-Resume/commit/b515fc36e7f282db92e8eb509b6c5004a944fa95))
|
|
||||||
|
|
||||||
## [3.1.0](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.0.0...v3.1.0) (2022-03-12)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **client:** add "spanish (es)" language to i18n locales ([bf167f8](https://github.com/AmruthPillai/Reactive-Resume/commit/bf167f81a3659677dada55856f5eaf0fc469e697))
|
|
||||||
* **client:** add mm/yyyy date option to date format options ([82bf44d](https://github.com/AmruthPillai/Reactive-Resume/commit/82bf44daa24422156779e9b38d3dc695176eaa09)), closes [#656](https://github.com/AmruthPillai/Reactive-Resume/issues/656)
|
|
||||||
* **client:** add sitemap generation to next app ([2cbc582](https://github.com/AmruthPillai/Reactive-Resume/commit/2cbc582a12b72b3012246022d4b518ed657d4c08))
|
|
||||||
* **client:** disable "Toggle Page Orientation" when there's only one page on the artboard ([01da1a0](https://github.com/AmruthPillai/Reactive-Resume/commit/01da1a06b802f1063a41d7a9a682e76b1daf9461)), closes [#655](https://github.com/AmruthPillai/Reactive-Resume/issues/655)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **client:** remove hard-coded "keywords:" in certain templates ([dda42b4](https://github.com/AmruthPillai/Reactive-Resume/commit/dda42b4c6b3bc359ac4f2bb91ca8118ddc84ec07)), closes [#650](https://github.com/AmruthPillai/Reactive-Resume/issues/650)
|
|
||||||
* **client:** show "present" string if end date is not entered, also add to i18n locales ([b5cd6c4](https://github.com/AmruthPillai/Reactive-Resume/commit/b5cd6c412b5b6b6ca7bb43c3801762de451f06b4)), closes [#653](https://github.com/AmruthPillai/Reactive-Resume/issues/653)
|
|
||||||
* **server:** photo uploads not working, fix save location and returned url ([799f208](https://github.com/AmruthPillai/Reactive-Resume/commit/799f20823e6d97a1ff0ba2c45c61d56304d0fa58)), closes [#658](https://github.com/AmruthPillai/Reactive-Resume/issues/658)
|
|
||||||
|
|
||||||
## [3.0.0](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.0.0-beta.6...v3.0.0) (2022-03-11)
|
|
||||||
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **lang**: add German, Kannada and Tamil languages to the app ([3a524f9](https://github.com/AmruthPillai/Reactive-Resume/commit/3a524f9c9c7a0e446491265b2242ad3dfeae188c))
|
|
||||||
* **docs:** add docusaurus workspace, initial setup of docs ([dc4aa0b](https://github.com/AmruthPillai/Reactive-Resume/commit/dc4aa0b496096bd59c45426bfcea6ba7db5f5c01))
|
|
||||||
|
|
||||||
## [3.0.0-beta.6](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.0.0-beta.5...v3.0.0-beta.6) (2022-03-11)
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
* **lang:** add language switcher on the landing page, in the footer ([8bc7d25](https://github.com/AmruthPillai/Reactive-Resume/commit/8bc7d2599ef6af7a07bfbe886c43844152b0d9f7))
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **i18n:** add missing translation keys, update lang/locale logic ([7d8828a](https://github.com/AmruthPillai/Reactive-Resume/commit/7d8828a358d653bb162877a64c75028eb82678cd))
|
|
||||||
* **webkit:** fix issue with webkit not supporting .at() ([2654cba](https://github.com/AmruthPillai/Reactive-Resume/commit/2654cba039eb73d33257c36fa90a52cabc9fda96))
|
|
||||||
|
|
||||||
## [3.0.0-beta.5](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.0.0-beta.4...v3.0.0-beta.5) (2022-03-10)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* **app:** fix issue with using swipelayout ([972e8b1](https://github.com/AmruthPillai/Reactive-Resume/commit/972e8b1bcf9ad44d8915bf23d189711672937bc0))
|
|
||||||
21
README.md
21
README.md
@ -1,4 +1,4 @@
|
|||||||
<img src="https://github.com/AmruthPillai/Reactive-Resume/blob/main/docs/static/logo.svg" alt="Reactive Resume" width="256px" height="256px" />
|
<img src="https://rxresu.me/images/logos/logo.png" alt="Reactive Resume" width="256px" height="256px" />
|
||||||
|
|
||||||
# Reactive Resume
|
# Reactive Resume
|
||||||
|
|
||||||
@ -27,7 +27,8 @@ You have complete control over what goes into your resume, how it looks, what co
|
|||||||
- [Contributing](#contributing)
|
- [Contributing](#contributing)
|
||||||
- [Report Bugs and Feature Requests](#report-bugs-and-feature-requests)
|
- [Report Bugs and Feature Requests](#report-bugs-and-feature-requests)
|
||||||
- [Donations](#donations)
|
- [Donations](#donations)
|
||||||
- [💸 PayPal](#-paypal)
|
- [GitHub Sponsor](#github-sponsor)
|
||||||
|
- [PayPal](#paypal)
|
||||||
- [Infrastructure](#infrastructure)
|
- [Infrastructure](#infrastructure)
|
||||||
- [Contributors Wall](#contributors-wall)
|
- [Contributors Wall](#contributors-wall)
|
||||||
- [License](#license)
|
- [License](#license)
|
||||||
@ -54,9 +55,11 @@ You have complete control over what goes into your resume, how it looks, what co
|
|||||||
|
|
||||||
## Languages
|
## Languages
|
||||||
|
|
||||||
|
- Amharic (አማርኛ)
|
||||||
- Arabic (اَلْعَرَبِيَّةُ)
|
- Arabic (اَلْعَرَبِيَّةُ)
|
||||||
- Bengali (বাংলা)
|
- Bengali (বাংলা)
|
||||||
- Bulgarian (български)
|
- Bulgarian (български)
|
||||||
|
- Catalan (Valencian)
|
||||||
- Chinese (中文)
|
- Chinese (中文)
|
||||||
- Czech (čeština)
|
- Czech (čeština)
|
||||||
- Danish (Dansk)
|
- Danish (Dansk)
|
||||||
@ -71,17 +74,26 @@ You have complete control over what goes into your resume, how it looks, what co
|
|||||||
- Hungarian (Magyar)
|
- Hungarian (Magyar)
|
||||||
- Indonesian (Bahasa Indonesia)
|
- Indonesian (Bahasa Indonesia)
|
||||||
- Italian (Italiano)
|
- Italian (Italiano)
|
||||||
|
- Japanese (日本語)
|
||||||
- Kannada (ಕನ್ನಡ)
|
- Kannada (ಕನ್ನಡ)
|
||||||
|
- Khmer (ភាសាខ្មែរ)
|
||||||
|
- Korean (한국어)
|
||||||
- Malayalam (മലയാളം)
|
- Malayalam (മലയാളം)
|
||||||
|
- Marathi (मराठी)
|
||||||
|
- Nepali (नेपाली)
|
||||||
|
- Norwegian (Norsk)
|
||||||
- Odia (ଓଡ଼ିଆ)
|
- Odia (ଓଡ଼ିଆ)
|
||||||
- Persian (Farsi)
|
- Persian (فارسی)
|
||||||
- Polish (Polski)
|
- Polish (Polski)
|
||||||
- Portuguese (Português)
|
- Portuguese (Português)
|
||||||
|
- Romanian (limba română)
|
||||||
- Russian (русский)
|
- Russian (русский)
|
||||||
|
- Serbian (српски језик)
|
||||||
- Spanish (Español)
|
- Spanish (Español)
|
||||||
- Swedish (Svenska)
|
- Swedish (Svenska)
|
||||||
- Tamil (தமிழ்)
|
- Tamil (தமிழ்)
|
||||||
- Turkish (Türkçe)
|
- Turkish (Türkçe)
|
||||||
|
- Ukranian (Українська мова)
|
||||||
- Vietnamese (Tiếng Việt)
|
- Vietnamese (Tiếng Việt)
|
||||||
|
|
||||||
Help by [translating Reactive Resume](https://translate.rxresu.me) to your language!
|
Help by [translating Reactive Resume](https://translate.rxresu.me) to your language!
|
||||||
@ -114,7 +126,8 @@ Use the [GitHub Issues](https://github.com/AmruthPillai/Reactive-Resume/issues/n
|
|||||||
|
|
||||||
Reactive Resume would be nothing without the folks who supported me and kept the project alive in the beginning, and your continued support is what keeps me going. If you found Reactive Resume to be useful, helpful or just insightful and appreciate the effort I took to make the project, please consider donating as little or as much as you can.
|
Reactive Resume would be nothing without the folks who supported me and kept the project alive in the beginning, and your continued support is what keeps me going. If you found Reactive Resume to be useful, helpful or just insightful and appreciate the effort I took to make the project, please consider donating as little or as much as you can.
|
||||||
|
|
||||||
### [💸 PayPal](https://paypal.me/RajaRajanA)
|
### [GitHub Sponsor](https://github.com/sponsors/AmruthPillai)
|
||||||
|
### [PayPal](https://paypal.me/RajaRajanA)
|
||||||
|
|
||||||
## Infrastructure
|
## Infrastructure
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
plugins {
|
plugins {
|
||||||
id 'com.android.application' version '7.1.2' apply false
|
id 'com.android.application' version '7.1.2' apply false
|
||||||
id 'com.android.library' version '7.1.2' apply false
|
id 'com.android.library' version '7.1.2' apply false
|
||||||
id 'org.jetbrains.kotlin.android' version '1.7.10' apply false
|
id 'org.jetbrains.kotlin.android' version '1.7.20' apply false
|
||||||
}
|
}
|
||||||
|
|
||||||
task clean(type: Delete) {
|
task clean(type: Delete) {
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
{
|
{
|
||||||
"extends": ["../.eslintrc.json", "next/core-web-vitals", "plugin:tailwindcss/recommended"],
|
"extends": ["../.eslintrc.json", "next/core-web-vitals", "plugin:tailwindcss/recommended"],
|
||||||
|
"plugins": ["unused-imports"],
|
||||||
"ignorePatterns": [".next", "__ENV.js"],
|
"ignorePatterns": [".next", "__ENV.js"],
|
||||||
"settings": {
|
"settings": {
|
||||||
"next": {
|
"next": {
|
||||||
@ -14,6 +15,18 @@
|
|||||||
// React Hooks
|
// React Hooks
|
||||||
"react-hooks/exhaustive-deps": "off",
|
"react-hooks/exhaustive-deps": "off",
|
||||||
|
|
||||||
|
// Unused Imports
|
||||||
|
"unused-imports/no-unused-imports": "error",
|
||||||
|
"unused-imports/no-unused-vars": [
|
||||||
|
"warn",
|
||||||
|
{
|
||||||
|
"vars": "all",
|
||||||
|
"args": "none",
|
||||||
|
"varsIgnorePattern": "^_",
|
||||||
|
"argsIgnorePattern": "^_"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
// Tailwind CSS
|
// Tailwind CSS
|
||||||
"tailwindcss/no-custom-classname": ["warn", { "whitelist": ["preview-mode", "printer-mode", "markdown"] }]
|
"tailwindcss/no-custom-classname": ["warn", { "whitelist": ["preview-mode", "printer-mode", "markdown"] }]
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,7 +2,7 @@ FROM node:lts-alpine AS base
|
|||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
RUN apk add --no-cache g++ git curl make python3 \
|
RUN apk add --no-cache g++ git curl make python3 libc6-compat \
|
||||||
&& curl -f https://get.pnpm.io/v6.16.js | node - add --global pnpm
|
&& curl -f https://get.pnpm.io/v6.16.js | node - add --global pnpm
|
||||||
|
|
||||||
FROM base as dependencies
|
FROM base as dependencies
|
||||||
|
|||||||
@ -70,7 +70,7 @@ const ArtboardController: React.FC<ReactZoomPanPinchRef> = ({ zoomIn, zoomOut, c
|
|||||||
|
|
||||||
const url = await mutateAsync({ username, slug });
|
const url = await mutateAsync({ username, slug });
|
||||||
|
|
||||||
download(`/api${url}`);
|
download(url);
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@ -15,7 +15,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
&.break::after {
|
&.break::after {
|
||||||
content: 'A4 Page Break';
|
content: 'Page Break';
|
||||||
top: calc(297mm - 19px);
|
top: calc(297mm - 19px);
|
||||||
|
|
||||||
@apply absolute w-full border-b border-dashed border-neutral-800/75;
|
@apply absolute w-full border-b border-dashed border-neutral-800/75;
|
||||||
@ -27,6 +27,22 @@
|
|||||||
@apply hidden;
|
@apply hidden;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&.format-letter {
|
||||||
|
width: 216mm;
|
||||||
|
min-height: 279mm;
|
||||||
|
|
||||||
|
&.break::after {
|
||||||
|
top: calc(279mm - 19px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.markdown {
|
||||||
|
ul {
|
||||||
|
padding-left: 1.5em;
|
||||||
|
text-indent: -1.5em;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.pageNumber {
|
.pageNumber {
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import { css } from '@emotion/css';
|
import { css } from '@emotion/css';
|
||||||
import { CustomCSS, Theme, Typography } from '@reactive-resume/schema';
|
import { CustomCSS, PageConfig, ThemeConfig, Typography } from '@reactive-resume/schema';
|
||||||
import clsx from 'clsx';
|
import clsx from 'clsx';
|
||||||
import get from 'lodash/get';
|
import get from 'lodash/get';
|
||||||
import isEmpty from 'lodash/isEmpty';
|
import isEmpty from 'lodash/isEmpty';
|
||||||
@ -23,9 +23,10 @@ const Page: React.FC<Props> = ({ page, showPageNumbers = false }) => {
|
|||||||
const resume = useAppSelector((state) => state.resume.present);
|
const resume = useAppSelector((state) => state.resume.present);
|
||||||
const breakLine: boolean = useAppSelector((state) => state.build.page.breakLine);
|
const breakLine: boolean = useAppSelector((state) => state.build.page.breakLine);
|
||||||
|
|
||||||
const theme: Theme = get(resume, 'metadata.theme');
|
const theme: ThemeConfig = get(resume, 'metadata.theme');
|
||||||
const customCSS: CustomCSS = get(resume, 'metadata.css');
|
const customCSS: CustomCSS = get(resume, 'metadata.css');
|
||||||
const template: string = get(resume, 'metadata.template');
|
const template: string = get(resume, 'metadata.template');
|
||||||
|
const pageConfig: PageConfig = get(resume, 'metadata.page');
|
||||||
const typography: Typography = get(resume, 'metadata.typography');
|
const typography: Typography = get(resume, 'metadata.typography');
|
||||||
|
|
||||||
const themeCSS = useMemo(() => !isEmpty(theme) && generateThemeStyles(theme), [theme]);
|
const themeCSS = useMemo(() => !isEmpty(theme) && generateThemeStyles(theme), [theme]);
|
||||||
@ -33,12 +34,13 @@ const Page: React.FC<Props> = ({ page, showPageNumbers = false }) => {
|
|||||||
const TemplatePage: React.FC<PageProps> | null = useMemo(() => templateMap[template].component, [template]);
|
const TemplatePage: React.FC<PageProps> | null = useMemo(() => templateMap[template].component, [template]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div data-page={page + 1} className={styles.container}>
|
<div className={styles.container} data-page={page + 1} data-format={pageConfig?.format || 'A4'}>
|
||||||
<div
|
<div
|
||||||
className={clsx({
|
className={clsx({
|
||||||
reset: true,
|
reset: true,
|
||||||
[styles.page]: true,
|
[styles.page]: true,
|
||||||
[styles.break]: breakLine,
|
[styles.break]: breakLine,
|
||||||
|
[styles['format-letter']]: pageConfig?.format === 'Letter',
|
||||||
[css(themeCSS)]: true,
|
[css(themeCSS)]: true,
|
||||||
[css(typographyCSS)]: true,
|
[css(typographyCSS)]: true,
|
||||||
[css(customCSS.value)]: customCSS.visible,
|
[css(customCSS.value)]: customCSS.visible,
|
||||||
|
|||||||
@ -65,7 +65,7 @@ const LeftSidebar = () => {
|
|||||||
variant={isDesktop ? 'persistent' : 'temporary'}
|
variant={isDesktop ? 'persistent' : 'temporary'}
|
||||||
>
|
>
|
||||||
<div className={styles.container}>
|
<div className={styles.container}>
|
||||||
<nav>
|
<nav className="overflow-y-scroll">
|
||||||
<div>
|
<div>
|
||||||
<Link href="/dashboard">
|
<Link href="/dashboard">
|
||||||
<a className="inline-flex">
|
<a className="inline-flex">
|
||||||
|
|||||||
@ -43,7 +43,7 @@ const RightSidebar = () => {
|
|||||||
variant={isDesktop ? 'persistent' : 'temporary'}
|
variant={isDesktop ? 'persistent' : 'temporary'}
|
||||||
>
|
>
|
||||||
<div className={styles.container}>
|
<div className={styles.container}>
|
||||||
<nav>
|
<nav className="overflow-y-scroll">
|
||||||
<div>
|
<div>
|
||||||
<Avatar size={40} />
|
<Avatar size={40} />
|
||||||
<Divider />
|
<Divider />
|
||||||
|
|||||||
@ -48,7 +48,7 @@ const Export = () => {
|
|||||||
|
|
||||||
const url = await mutateAsync({ username, slug });
|
const url = await mutateAsync({ username, slug });
|
||||||
|
|
||||||
download(`/api${url}`);
|
download(url);
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@ -3,7 +3,7 @@ import { Button } from '@mui/material';
|
|||||||
import { useTranslation } from 'next-i18next';
|
import { useTranslation } from 'next-i18next';
|
||||||
|
|
||||||
import Heading from '@/components/shared/Heading';
|
import Heading from '@/components/shared/Heading';
|
||||||
import { DONATION_URL, GITHUB_ISSUES_URL, GITHUB_URL } from '@/constants/index';
|
import { DOCS_URL, DONATION_URL, GITHUB_ISSUES_URL, GITHUB_URL } from '@/constants/index';
|
||||||
|
|
||||||
import styles from './Links.module.scss';
|
import styles from './Links.module.scss';
|
||||||
|
|
||||||
@ -49,6 +49,12 @@ const Links = () => {
|
|||||||
{t<string>('builder.rightSidebar.sections.links.github')}
|
{t<string>('builder.rightSidebar.sections.links.github')}
|
||||||
</Button>
|
</Button>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<a href={DOCS_URL} target="_blank" rel="noreferrer">
|
||||||
|
<Button variant="text" startIcon={<Link />}>
|
||||||
|
{t<string>('builder.rightSidebar.sections.links.docs')}
|
||||||
|
</Button>
|
||||||
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
|
|||||||
@ -10,7 +10,7 @@ import {
|
|||||||
Switch,
|
Switch,
|
||||||
TextField,
|
TextField,
|
||||||
} from '@mui/material';
|
} from '@mui/material';
|
||||||
import { DateConfig, Resume } from '@reactive-resume/schema';
|
import { DateConfig, PageConfig, Resume } from '@reactive-resume/schema';
|
||||||
import dayjs from 'dayjs';
|
import dayjs from 'dayjs';
|
||||||
import get from 'lodash/get';
|
import get from 'lodash/get';
|
||||||
import { useRouter } from 'next/router';
|
import { useRouter } from 'next/router';
|
||||||
@ -47,10 +47,11 @@ const Settings = () => {
|
|||||||
const id: number = useMemo(() => get(resume, 'id'), [resume]);
|
const id: number = useMemo(() => get(resume, 'id'), [resume]);
|
||||||
const slug: string = useMemo(() => get(resume, 'slug'), [resume]);
|
const slug: string = useMemo(() => get(resume, 'slug'), [resume]);
|
||||||
const username: string = useMemo(() => get(resume, 'user.username'), [resume]);
|
const username: string = useMemo(() => get(resume, 'user.username'), [resume]);
|
||||||
|
const pageConfig: PageConfig = useMemo(() => get(resume, 'metadata.page'), [resume]);
|
||||||
const dateConfig: DateConfig = useMemo(() => get(resume, 'metadata.date'), [resume]);
|
const dateConfig: DateConfig = useMemo(() => get(resume, 'metadata.date'), [resume]);
|
||||||
|
|
||||||
const isDarkMode = useMemo(() => theme === 'dark', [theme]);
|
const isDarkMode = useMemo(() => theme === 'dark', [theme]);
|
||||||
const exampleString = useMemo(() => `Eg. ${dayjs().utc().format(dateConfig.format)}`, [dateConfig.format]);
|
const exampleDateString = useMemo(() => `Eg. ${dayjs().utc().format(dateConfig.format)}`, [dateConfig.format]);
|
||||||
const themeString = useMemo(() => (isDarkMode ? 'Matte Black Everything' : 'As bright as your future'), [isDarkMode]);
|
const themeString = useMemo(() => (isDarkMode ? 'Matte Black Everything' : 'As bright as your future'), [isDarkMode]);
|
||||||
|
|
||||||
const { mutateAsync: loadSampleDataMutation } = useMutation<Resume, ServerError, LoadSampleDataParams>(
|
const { mutateAsync: loadSampleDataMutation } = useMutation<Resume, ServerError, LoadSampleDataParams>(
|
||||||
@ -60,6 +61,9 @@ const Settings = () => {
|
|||||||
|
|
||||||
const handleSetTheme = (value: boolean) => dispatch(setTheme({ theme: value ? 'dark' : 'light' }));
|
const handleSetTheme = (value: boolean) => dispatch(setTheme({ theme: value ? 'dark' : 'light' }));
|
||||||
|
|
||||||
|
const handleChangePageFormat = (value: PageConfig['format'] | null) =>
|
||||||
|
dispatch(setResumeState({ path: 'metadata.page.format', value }));
|
||||||
|
|
||||||
const handleChangeDateFormat = (value: string | null) =>
|
const handleChangeDateFormat = (value: string | null) =>
|
||||||
dispatch(setResumeState({ path: 'metadata.date.format', value }));
|
dispatch(setResumeState({ path: 'metadata.date.format', value }));
|
||||||
|
|
||||||
@ -118,13 +122,13 @@ const Settings = () => {
|
|||||||
primary={t<string>('builder.rightSidebar.sections.settings.global.date.primary')}
|
primary={t<string>('builder.rightSidebar.sections.settings.global.date.primary')}
|
||||||
secondary={t<string>('builder.rightSidebar.sections.settings.global.date.secondary')}
|
secondary={t<string>('builder.rightSidebar.sections.settings.global.date.secondary')}
|
||||||
/>
|
/>
|
||||||
<Autocomplete<string, false, boolean, false>
|
<Autocomplete<string, false, true, false>
|
||||||
disableClearable
|
disableClearable
|
||||||
className="my-2 w-full"
|
className="my-2 w-full"
|
||||||
options={dateFormatOptions}
|
options={dateFormatOptions}
|
||||||
value={dateConfig.format}
|
value={dateConfig.format}
|
||||||
onChange={(_, value) => handleChangeDateFormat(value)}
|
onChange={(_, value) => handleChangeDateFormat(value)}
|
||||||
renderInput={(params) => <TextField {...params} helperText={exampleString} />}
|
renderInput={(params) => <TextField {...params} helperText={exampleDateString} />}
|
||||||
/>
|
/>
|
||||||
</ListItem>
|
</ListItem>
|
||||||
|
|
||||||
@ -134,7 +138,7 @@ const Settings = () => {
|
|||||||
primary={t<string>('builder.rightSidebar.sections.settings.global.language.primary')}
|
primary={t<string>('builder.rightSidebar.sections.settings.global.language.primary')}
|
||||||
secondary={t<string>('builder.rightSidebar.sections.settings.global.language.secondary')}
|
secondary={t<string>('builder.rightSidebar.sections.settings.global.language.secondary')}
|
||||||
/>
|
/>
|
||||||
<Autocomplete<Language, false, boolean, false>
|
<Autocomplete<Language, false, true, false>
|
||||||
disableClearable
|
disableClearable
|
||||||
className="my-2 w-full"
|
className="my-2 w-full"
|
||||||
options={languages}
|
options={languages}
|
||||||
@ -159,6 +163,23 @@ const Settings = () => {
|
|||||||
{t<string>('builder.rightSidebar.sections.settings.page.heading')}
|
{t<string>('builder.rightSidebar.sections.settings.page.heading')}
|
||||||
</ListSubheader>
|
</ListSubheader>
|
||||||
|
|
||||||
|
<ListItem className="flex-col">
|
||||||
|
<ListItemText
|
||||||
|
className="w-full"
|
||||||
|
primary={t<string>('builder.rightSidebar.sections.settings.page.format.primary')}
|
||||||
|
secondary={t<string>('builder.rightSidebar.sections.settings.page.format.secondary')}
|
||||||
|
/>
|
||||||
|
<Autocomplete<PageConfig['format'], false, true, false>
|
||||||
|
disableClearable
|
||||||
|
defaultValue="A4"
|
||||||
|
className="my-2 w-full"
|
||||||
|
options={['A4', 'Letter']}
|
||||||
|
value={pageConfig?.format || 'A4'}
|
||||||
|
renderInput={(params) => <TextField {...params} />}
|
||||||
|
onChange={(_, value) => handleChangePageFormat(value)}
|
||||||
|
/>
|
||||||
|
</ListItem>
|
||||||
|
|
||||||
<ListItem>
|
<ListItem>
|
||||||
<ListItemText
|
<ListItemText
|
||||||
primary={t<string>('builder.rightSidebar.sections.settings.page.orientation.primary')}
|
primary={t<string>('builder.rightSidebar.sections.settings.page.orientation.primary')}
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { Theme as ThemeType } from '@reactive-resume/schema';
|
import { ThemeConfig } from '@reactive-resume/schema';
|
||||||
import get from 'lodash/get';
|
import get from 'lodash/get';
|
||||||
import { useTranslation } from 'next-i18next';
|
import { useTranslation } from 'next-i18next';
|
||||||
|
|
||||||
@ -16,7 +16,7 @@ const Theme = () => {
|
|||||||
|
|
||||||
const dispatch = useAppDispatch();
|
const dispatch = useAppDispatch();
|
||||||
|
|
||||||
const { background, text, primary } = useAppSelector<ThemeType>((state) =>
|
const { background, text, primary } = useAppSelector<ThemeConfig>((state) =>
|
||||||
get(state.resume.present, 'metadata.theme')
|
get(state.resume.present, 'metadata.theme')
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -2,36 +2,48 @@ export type Language = {
|
|||||||
code: string;
|
code: string;
|
||||||
name: string;
|
name: string;
|
||||||
localName?: string;
|
localName?: string;
|
||||||
|
isRTL?: boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const languages: Language[] = [
|
export const languages: Language[] = [
|
||||||
{ code: 'ar', name: 'Arabic', localName: 'اَلْعَرَبِيَّةُ' },
|
{ code: 'am', name: 'Amharic', localName: 'አማርኛ' },
|
||||||
|
{ code: 'ar', name: 'Arabic', localName: 'اَلْعَرَبِيَّةُ', isRTL: true },
|
||||||
{ code: 'bg', name: 'Bulgarian', localName: 'български' },
|
{ code: 'bg', name: 'Bulgarian', localName: 'български' },
|
||||||
{ code: 'bn', name: 'Bengali', localName: 'বাংলা' },
|
{ code: 'bn', name: 'Bengali', localName: 'বাংলা' },
|
||||||
|
{ code: 'ca', name: 'Catalan', localName: 'Valencian' },
|
||||||
{ code: 'cs', name: 'Czech', localName: 'čeština' },
|
{ code: 'cs', name: 'Czech', localName: 'čeština' },
|
||||||
{ code: 'da', name: 'Danish', localName: 'Dansk' },
|
{ code: 'da', name: 'Danish', localName: 'Dansk' },
|
||||||
{ code: 'de', name: 'German', localName: 'Deutsch' },
|
{ code: 'de', name: 'German', localName: 'Deutsch' },
|
||||||
{ code: 'el', name: 'Greek', localName: 'Ελληνικά' },
|
{ code: 'el', name: 'Greek', localName: 'Ελληνικά' },
|
||||||
{ code: 'en', name: 'English' },
|
{ code: 'en', name: 'English' },
|
||||||
{ code: 'es', name: 'Spanish', localName: 'Español' },
|
{ code: 'es', name: 'Spanish', localName: 'Español' },
|
||||||
|
{ code: 'fa', name: 'Persian', localName: 'فارسی', isRTL: true },
|
||||||
{ code: 'fi', name: 'Finnish', localName: 'Suomi' },
|
{ code: 'fi', name: 'Finnish', localName: 'Suomi' },
|
||||||
{ code: 'fr', name: 'French', localName: 'Français' },
|
{ code: 'fr', name: 'French', localName: 'Français' },
|
||||||
{ code: 'he', name: 'Hebrew', localName: 'Ivrit' },
|
{ code: 'he', name: 'Hebrew', localName: 'Ivrit', isRTL: true },
|
||||||
{ code: 'hi', name: 'Hindi', localName: 'हिन्दी' },
|
{ code: 'hi', name: 'Hindi', localName: 'हिन्दी' },
|
||||||
{ code: 'hu', name: 'Hungarian', localName: 'Magyar' },
|
{ code: 'hu', name: 'Hungarian', localName: 'Magyar' },
|
||||||
{ code: 'id', name: 'Indonesian', localName: 'Bahasa Indonesia' },
|
{ code: 'id', name: 'Indonesian', localName: 'Bahasa Indonesia' },
|
||||||
{ code: 'it', name: 'Italian', localName: 'Italiano' },
|
{ code: 'it', name: 'Italian', localName: 'Italiano' },
|
||||||
|
{ code: 'ja', name: 'Japanese', localName: '日本語' },
|
||||||
|
{ code: 'km', name: 'Khmer', localName: 'ភាសាខ្មែរ' },
|
||||||
{ code: 'kn', name: 'Kannada', localName: 'ಕನ್ನಡ' },
|
{ code: 'kn', name: 'Kannada', localName: 'ಕನ್ನಡ' },
|
||||||
|
{ code: 'ko', name: 'Korean', localName: '한국어' },
|
||||||
{ code: 'ml', name: 'Malayalam', localName: 'മലയാളം' },
|
{ code: 'ml', name: 'Malayalam', localName: 'മലയാളം' },
|
||||||
|
{ code: 'mr', name: 'Marathi', localName: 'मराठी' },
|
||||||
|
{ code: 'ne', name: 'Nepali', localName: 'नेपाली' },
|
||||||
{ code: 'nl', name: 'Dutch', localName: 'Nederlands' },
|
{ code: 'nl', name: 'Dutch', localName: 'Nederlands' },
|
||||||
|
{ code: 'no', name: 'Norwegian', localName: 'Norsk' },
|
||||||
{ code: 'or', name: 'Odia', localName: 'ଓଡ଼ିଆ' },
|
{ code: 'or', name: 'Odia', localName: 'ଓଡ଼ିଆ' },
|
||||||
{ code: 'fa', name: 'Persian', localName: 'Farsi' },
|
|
||||||
{ code: 'pl', name: 'Polish', localName: 'Polski' },
|
{ code: 'pl', name: 'Polish', localName: 'Polski' },
|
||||||
{ code: 'pt', name: 'Portuguese', localName: 'Português' },
|
{ code: 'pt', name: 'Portuguese', localName: 'Português' },
|
||||||
|
{ code: 'ro', name: 'Romanian', localName: 'limba română' },
|
||||||
{ code: 'ru', name: 'Russian', localName: 'русский' },
|
{ code: 'ru', name: 'Russian', localName: 'русский' },
|
||||||
|
{ code: 'sr', name: 'Serbian', localName: 'српски језик' },
|
||||||
{ code: 'sv', name: 'Swedish', localName: 'Svenska' },
|
{ code: 'sv', name: 'Swedish', localName: 'Svenska' },
|
||||||
{ code: 'ta', name: 'Tamil', localName: 'தமிழ்' },
|
{ code: 'ta', name: 'Tamil', localName: 'தமிழ்' },
|
||||||
{ code: 'tr', name: 'Turkish', localName: 'Türkçe' },
|
{ code: 'tr', name: 'Turkish', localName: 'Türkçe' },
|
||||||
|
{ code: 'uk', name: 'Ukranian', localName: 'Українська мова' },
|
||||||
{ code: 'vi', name: 'Vietnamese', localName: 'Tiếng Việt' },
|
{ code: 'vi', name: 'Vietnamese', localName: 'Tiếng Việt' },
|
||||||
{ code: 'zh', name: 'Chinese', localName: '中文' },
|
{ code: 'zh', name: 'Chinese', localName: '中文' },
|
||||||
].sort((a, b) => a.name.localeCompare(b.name));
|
].sort((a, b) => a.name.localeCompare(b.name));
|
||||||
|
|||||||
@ -9,6 +9,7 @@ export const VALID_URL_REGEX = /[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}
|
|||||||
export const FILENAME_TIMESTAMP = 'DDMMYYYYHHmmss';
|
export const FILENAME_TIMESTAMP = 'DDMMYYYYHHmmss';
|
||||||
|
|
||||||
// Links
|
// Links
|
||||||
|
export const DOCS_URL = 'https://docs.rxresu.me';
|
||||||
export const DONATION_URL = 'https://paypal.me/RajaRajanA';
|
export const DONATION_URL = 'https://paypal.me/RajaRajanA';
|
||||||
export const TRANSLATE_URL = 'https://translate.rxresu.me/';
|
export const TRANSLATE_URL = 'https://translate.rxresu.me/';
|
||||||
export const DIGITALOCEAN_URL = 'https://pillai.xyz/digitalocean';
|
export const DIGITALOCEAN_URL = 'https://pillai.xyz/digitalocean';
|
||||||
|
|||||||
@ -162,15 +162,14 @@ const LoginModal: React.FC = () => {
|
|||||||
{!FLAG_DISABLE_SIGNUPS && (
|
{!FLAG_DISABLE_SIGNUPS && (
|
||||||
<p className="text-xs">
|
<p className="text-xs">
|
||||||
<Trans t={t} i18nKey="modals.auth.login.register-text">
|
<Trans t={t} i18nKey="modals.auth.login.register-text">
|
||||||
If you don't have one, you can <a onClick={handleCreateAccount}>create an account</a> here.
|
If you don't have one, you can <a onClick={handleCreateAccount}>create an account here.</a>
|
||||||
</Trans>
|
</Trans>
|
||||||
</p>
|
</p>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
<p className="text-xs">
|
<p className="text-xs">
|
||||||
<Trans t={t} i18nKey="modals.auth.login.recover-text">
|
<Trans t={t} i18nKey="modals.auth.login.recover-text">
|
||||||
In case you have forgotten your password, you can <a onClick={handleRecoverAccount}>recover your account</a>
|
In case you have forgotten your password, you can <a onClick={handleRecoverAccount}>recover your account here.</a>
|
||||||
here.
|
|
||||||
</Trans>
|
</Trans>
|
||||||
</p>
|
</p>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
|
|||||||
@ -93,7 +93,7 @@ const AwardModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="title"
|
name="title"
|
||||||
control={control}
|
control={control}
|
||||||
@ -177,6 +177,7 @@ const AwardModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -93,7 +93,7 @@ const CertificateModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="name"
|
name="name"
|
||||||
control={control}
|
control={control}
|
||||||
@ -177,6 +177,7 @@ const CertificateModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -110,7 +110,7 @@ const CustomModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="title"
|
name="title"
|
||||||
control={control}
|
control={control}
|
||||||
@ -282,6 +282,7 @@ const CustomModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -106,7 +106,7 @@ const EducationModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="institution"
|
name="institution"
|
||||||
control={control}
|
control={control}
|
||||||
@ -255,6 +255,7 @@ const EducationModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -84,7 +84,7 @@ const InterestModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="name"
|
name="name"
|
||||||
control={control}
|
control={control}
|
||||||
@ -114,6 +114,7 @@ const InterestModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -85,7 +85,7 @@ const LanguageModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="name"
|
name="name"
|
||||||
control={control}
|
control={control}
|
||||||
@ -150,6 +150,7 @@ const LanguageModal: React.FC = () => {
|
|||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -89,7 +89,7 @@ const ProfileModal: React.FC = () => {
|
|||||||
handleClose={handleClose}
|
handleClose={handleClose}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="network"
|
name="network"
|
||||||
control={control}
|
control={control}
|
||||||
@ -136,6 +136,7 @@ const ProfileModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -102,7 +102,7 @@ const ProjectModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="name"
|
name="name"
|
||||||
control={control}
|
control={control}
|
||||||
@ -225,6 +225,7 @@ const ProjectModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -93,7 +93,7 @@ const PublicationModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="name"
|
name="name"
|
||||||
control={control}
|
control={control}
|
||||||
@ -177,6 +177,7 @@ const PublicationModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -90,7 +90,7 @@ const ReferenceModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="name"
|
name="name"
|
||||||
control={control}
|
control={control}
|
||||||
@ -162,6 +162,7 @@ const ReferenceModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -88,7 +88,7 @@ const SkillModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="name"
|
name="name"
|
||||||
control={control}
|
control={control}
|
||||||
@ -166,6 +166,8 @@ const SkillModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -99,7 +99,7 @@ const VolunteerModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="organization"
|
name="organization"
|
||||||
control={control}
|
control={control}
|
||||||
@ -208,6 +208,7 @@ const VolunteerModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -99,7 +99,7 @@ const WorkModal: React.FC = () => {
|
|||||||
heading={isEditMode ? editText : addText}
|
heading={isEditMode ? editText : addText}
|
||||||
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
footerChildren={<Button onClick={handleSubmit(onSubmit)}>{isEditMode ? editText : addText}</Button>}
|
||||||
>
|
>
|
||||||
<form className="my-2 grid grid-cols-2 gap-4">
|
<form className="my-2 grid grid-cols-2 gap-4" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<Controller
|
<Controller
|
||||||
name="name"
|
name="name"
|
||||||
control={control}
|
control={control}
|
||||||
@ -208,6 +208,7 @@ const WorkModal: React.FC = () => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
<input type="submit" style={{ display: 'none' }} />
|
||||||
</form>
|
</form>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -4,9 +4,11 @@ const i18nConfig = {
|
|||||||
i18n: {
|
i18n: {
|
||||||
defaultLocale: 'en',
|
defaultLocale: 'en',
|
||||||
locales: [
|
locales: [
|
||||||
|
'am',
|
||||||
'ar',
|
'ar',
|
||||||
'bg',
|
'bg',
|
||||||
'bn',
|
'bn',
|
||||||
|
'ca',
|
||||||
'cs',
|
'cs',
|
||||||
'da',
|
'da',
|
||||||
'de',
|
'de',
|
||||||
@ -21,16 +23,25 @@ const i18nConfig = {
|
|||||||
'hu',
|
'hu',
|
||||||
'id',
|
'id',
|
||||||
'it',
|
'it',
|
||||||
|
'ja',
|
||||||
|
'km',
|
||||||
'kn',
|
'kn',
|
||||||
|
'ko',
|
||||||
'ml',
|
'ml',
|
||||||
|
'mr',
|
||||||
|
'ne',
|
||||||
'nl',
|
'nl',
|
||||||
|
'no',
|
||||||
'or',
|
'or',
|
||||||
'pl',
|
'pl',
|
||||||
'pt',
|
'pt',
|
||||||
|
'ro',
|
||||||
'ru',
|
'ru',
|
||||||
|
'sr',
|
||||||
'sv',
|
'sv',
|
||||||
'ta',
|
'ta',
|
||||||
'tr',
|
'tr',
|
||||||
|
'uk',
|
||||||
'vi',
|
'vi',
|
||||||
'zh',
|
'zh',
|
||||||
],
|
],
|
||||||
|
|||||||
@ -15,19 +15,6 @@ const nextConfig = {
|
|||||||
domains: ['cdn.rxresu.me', 'www.gravatar.com'],
|
domains: ['cdn.rxresu.me', 'www.gravatar.com'],
|
||||||
},
|
},
|
||||||
|
|
||||||
async rewrites() {
|
|
||||||
if (process.env.NODE_ENV === 'development') {
|
|
||||||
return [
|
|
||||||
{
|
|
||||||
source: '/api/:path*',
|
|
||||||
destination: 'http://localhost:3100/:path*',
|
|
||||||
},
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
||||||
return [];
|
|
||||||
},
|
|
||||||
|
|
||||||
// Hack to make Tailwind darkMode 'class' strategy with CSS Modules
|
// Hack to make Tailwind darkMode 'class' strategy with CSS Modules
|
||||||
// Ref: https://github.com/tailwindlabs/tailwindcss/issues/3258#issuecomment-968368156
|
// Ref: https://github.com/tailwindlabs/tailwindcss/issues/3258#issuecomment-968368156
|
||||||
webpack: (config) => {
|
webpack: (config) => {
|
||||||
|
|||||||
@ -9,75 +9,76 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@beam-australia/react-env": "^3.1.1",
|
"@beam-australia/react-env": "^3.1.1",
|
||||||
"@date-io/dayjs": "^2.15.0",
|
"@date-io/dayjs": "^2.16.0",
|
||||||
"@emotion/css": "^11.10.0",
|
"@emotion/css": "^11.10.0",
|
||||||
"@emotion/react": "^11.10.0",
|
"@emotion/react": "^11.10.4",
|
||||||
"@emotion/styled": "^11.10.0",
|
"@emotion/styled": "^11.10.4",
|
||||||
"@hello-pangea/dnd": "^16.0.0",
|
"@hello-pangea/dnd": "^16.0.1",
|
||||||
"@hookform/resolvers": "2.9.7",
|
"@hookform/resolvers": "2.9.9",
|
||||||
"@monaco-editor/react": "^4.4.5",
|
"@monaco-editor/react": "^4.4.6",
|
||||||
"@mui/icons-material": "^5.10.2",
|
"@mui/icons-material": "^5.10.9",
|
||||||
"@mui/lab": "^5.0.0-alpha.96",
|
"@mui/lab": "^5.0.0-alpha.103",
|
||||||
"@mui/material": "^5.10.2",
|
"@mui/material": "^5.10.9",
|
||||||
"@mui/system": "^5.10.2",
|
"@mui/system": "^5.10.9",
|
||||||
"@mui/x-date-pickers": "5.0.0-beta.7",
|
"@mui/x-date-pickers": "5.0.4",
|
||||||
"@next/env": "^12.2.5",
|
"@next/env": "^12.3.1",
|
||||||
"@react-oauth/google": "^0.2.6",
|
"@react-oauth/google": "^0.2.8",
|
||||||
"@reduxjs/toolkit": "^1.8.5",
|
"@reduxjs/toolkit": "^1.8.6",
|
||||||
"axios": "^0.27.2",
|
"axios": "^1.1.2",
|
||||||
"clsx": "^1.2.1",
|
"clsx": "^1.2.1",
|
||||||
"dayjs": "^1.11.5",
|
"dayjs": "^1.11.5",
|
||||||
"downloadjs": "^1.4.7",
|
"downloadjs": "^1.4.7",
|
||||||
"joi": "^17.6.0",
|
"joi": "^17.6.3",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
"md5-hex": "^4.0.0",
|
"md5-hex": "^4.0.0",
|
||||||
"monaco-editor": "^0.34.0",
|
"monaco-editor": "^0.34.0",
|
||||||
"nanoid": "^3.3.4",
|
"nanoid": "^3.3.4",
|
||||||
"next": "12.2.5",
|
"next": "12.3.1",
|
||||||
"next-i18next": "^12.0.0",
|
"next-i18next": "^12.1.0",
|
||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
"react-colorful": "^5.6.1",
|
"react-colorful": "^5.6.1",
|
||||||
"react-dnd": "16.0.1",
|
"react-dnd": "16.0.1",
|
||||||
"react-dnd-html5-backend": "16.0.1",
|
"react-dnd-html5-backend": "16.0.1",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.2.0",
|
||||||
"react-hook-form": "^7.34.2",
|
"react-hook-form": "^7.37.0",
|
||||||
"react-hot-toast": "2.3.0",
|
"react-hot-toast": "2.4.0",
|
||||||
"react-hotkeys-hook": "^3.4.7",
|
"react-hotkeys-hook": "^3.4.7",
|
||||||
"react-icons": "^4.4.0",
|
"react-icons": "^4.6.0",
|
||||||
"react-markdown": "^8.0.3",
|
"react-markdown": "^8.0.3",
|
||||||
"react-query": "^3.39.2",
|
"react-query": "^3.39.2",
|
||||||
"react-redux": "^8.0.2",
|
"react-redux": "^8.0.4",
|
||||||
"react-zoom-pan-pinch": "^2.1.3",
|
"react-zoom-pan-pinch": "^2.1.3",
|
||||||
"redux": "^4.2.0",
|
"redux": "^4.2.0",
|
||||||
"redux-persist": "^6.0.0",
|
"redux-persist": "^6.0.0",
|
||||||
"redux-saga": "^1.2.1",
|
"redux-saga": "^1.2.1",
|
||||||
"redux-undo": "^1.0.1",
|
"redux-undo": "^1.0.1",
|
||||||
"remark-gfm": "^3.0.1",
|
"remark-gfm": "^3.0.1",
|
||||||
"sharp": "^0.30.7",
|
"sharp": "^0.31.1",
|
||||||
"uuid": "^8.3.2",
|
"uuid": "^9.0.0",
|
||||||
"webfontloader": "^1.6.28"
|
"webfontloader": "^1.6.28"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/core": "^7.18.13",
|
"@babel/core": "^7.19.3",
|
||||||
"@reactive-resume/schema": "workspace:*",
|
"@reactive-resume/schema": "workspace:*",
|
||||||
"@tailwindcss/typography": "^0.5.4",
|
"eslint-plugin-unused-imports": "^2.0.0",
|
||||||
|
"@tailwindcss/typography": "^0.5.7",
|
||||||
"@types/downloadjs": "^1.4.3",
|
"@types/downloadjs": "^1.4.3",
|
||||||
"@types/lodash": "^4.14.184",
|
"@types/lodash": "^4.14.186",
|
||||||
"@types/node": "^18.7.13",
|
"@types/node": "^18.11.0",
|
||||||
"@types/react": "^18.0.17",
|
"@types/react": "^18.0.21",
|
||||||
"@types/react-dom": "^18.0.6",
|
"@types/react-dom": "^18.0.6",
|
||||||
"@types/react-redux": "^7.1.24",
|
"@types/react-redux": "^7.1.24",
|
||||||
"@types/tailwindcss": "^3.0.11",
|
"@types/tailwindcss": "^3.0.11",
|
||||||
"@types/uuid": "^8.3.4",
|
"@types/uuid": "^8.3.4",
|
||||||
"@types/webfontloader": "^1.6.34",
|
"@types/webfontloader": "^1.6.35",
|
||||||
"autoprefixer": "^10.4.8",
|
"autoprefixer": "^10.4.12",
|
||||||
"csstype": "^3.1.0",
|
"csstype": "^3.1.1",
|
||||||
"eslint-config-next": "^12.2.5",
|
"eslint-config-next": "^12.3.1",
|
||||||
"eslint-plugin-tailwindcss": "^3.6.0",
|
"eslint-plugin-tailwindcss": "^3.6.2",
|
||||||
"next-sitemap": "^3.1.21",
|
"next-sitemap": "^3.1.25",
|
||||||
"postcss": "^8.4.16",
|
"postcss": "^8.4.18",
|
||||||
"sass": "^1.54.5",
|
"sass": "^1.55.0",
|
||||||
"tailwindcss": "^3.1.8",
|
"tailwindcss": "^3.1.8",
|
||||||
"typescript": "^4.7.4"
|
"typescript": "^4.8.4"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -98,7 +98,7 @@ const Preview: NextPage<Props> = ({ username, slug, resume: initialData }) => {
|
|||||||
try {
|
try {
|
||||||
const url = await mutateAsync({ username, slug });
|
const url = await mutateAsync({ username, slug });
|
||||||
|
|
||||||
download(`/api${url}`);
|
download(url);
|
||||||
} catch {
|
} catch {
|
||||||
toast.error('Something went wrong, please try again later.');
|
toast.error('Something went wrong, please try again later.');
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,6 +3,7 @@ import clsx from 'clsx';
|
|||||||
import get from 'lodash/get';
|
import get from 'lodash/get';
|
||||||
import isEmpty from 'lodash/isEmpty';
|
import isEmpty from 'lodash/isEmpty';
|
||||||
import { GetServerSideProps, NextPage } from 'next';
|
import { GetServerSideProps, NextPage } from 'next';
|
||||||
|
import { useRouter } from 'next/router';
|
||||||
import { serverSideTranslations } from 'next-i18next/serverSideTranslations';
|
import { serverSideTranslations } from 'next-i18next/serverSideTranslations';
|
||||||
import { useEffect } from 'react';
|
import { useEffect } from 'react';
|
||||||
|
|
||||||
@ -54,10 +55,20 @@ export const getServerSideProps: GetServerSideProps<Props | Promise<Props>, Quer
|
|||||||
};
|
};
|
||||||
|
|
||||||
const Printer: NextPage<Props> = ({ resume: initialData, locale }) => {
|
const Printer: NextPage<Props> = ({ resume: initialData, locale }) => {
|
||||||
|
const router = useRouter();
|
||||||
|
|
||||||
const dispatch = useAppDispatch();
|
const dispatch = useAppDispatch();
|
||||||
|
|
||||||
const resume = useAppSelector((state) => state.resume.present);
|
const resume = useAppSelector((state) => state.resume.present);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (router.locale !== locale) {
|
||||||
|
const { pathname, asPath, query } = router;
|
||||||
|
|
||||||
|
router.push({ pathname, query }, asPath, { locale });
|
||||||
|
}
|
||||||
|
}, [router, locale]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (initialData) dispatch(setResume(initialData));
|
if (initialData) dispatch(setResume(initialData));
|
||||||
}, [dispatch, initialData]);
|
}, [dispatch, initialData]);
|
||||||
|
|||||||
@ -18,46 +18,44 @@ import queryClient from '@/services/react-query';
|
|||||||
import store, { persistor } from '@/store/index';
|
import store, { persistor } from '@/store/index';
|
||||||
import WrapperRegistry from '@/wrappers/index';
|
import WrapperRegistry from '@/wrappers/index';
|
||||||
|
|
||||||
const App: React.FC<AppProps> = ({ Component, pageProps }) => {
|
const App = ({ Component, pageProps }: AppProps): JSX.Element => (
|
||||||
return (
|
<>
|
||||||
<>
|
<Head>
|
||||||
<Head>
|
<title>Reactive Resume</title>
|
||||||
<title>Reactive Resume</title>
|
|
||||||
|
|
||||||
<meta
|
<meta
|
||||||
name="description"
|
name="description"
|
||||||
content="Reactive Resume is a free and open source resume builder that's built to make the mundane tasks of creating, updating and sharing your resume as easy as 1, 2, 3."
|
content="Reactive Resume is a free and open source resume builder that's built to make the mundane tasks of creating, updating and sharing your resume as easy as 1, 2, 3."
|
||||||
/>
|
/>
|
||||||
<link rel="icon" href="/favicon.ico" />
|
<link rel="icon" href="/favicon.ico" />
|
||||||
<meta name="viewport" content="initial-scale=1, width=device-width" />
|
<meta name="viewport" content="initial-scale=1, width=device-width" />
|
||||||
</Head>
|
</Head>
|
||||||
|
|
||||||
<ReduxProvider store={store}>
|
<ReduxProvider store={store}>
|
||||||
<LocalizationProvider dateAdapter={DayjsAdapter}>
|
<LocalizationProvider dateAdapter={DayjsAdapter}>
|
||||||
<PersistGate loading={null} persistor={persistor}>
|
<PersistGate loading={null} persistor={persistor}>
|
||||||
<GoogleOAuthProvider clientId={env('GOOGLE_CLIENT_ID')}>
|
<GoogleOAuthProvider clientId={env('GOOGLE_CLIENT_ID')}>
|
||||||
<QueryClientProvider client={queryClient}>
|
<QueryClientProvider client={queryClient}>
|
||||||
<WrapperRegistry>
|
<WrapperRegistry>
|
||||||
<Loading />
|
<Loading />
|
||||||
|
|
||||||
<Component {...pageProps} />
|
<Component {...pageProps} />
|
||||||
|
|
||||||
<ModalWrapper />
|
<ModalWrapper />
|
||||||
<Toaster
|
<Toaster
|
||||||
position="bottom-right"
|
position="bottom-right"
|
||||||
toastOptions={{
|
toastOptions={{
|
||||||
duration: 4000,
|
duration: 4000,
|
||||||
className: 'toast',
|
className: 'toast',
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</WrapperRegistry>
|
</WrapperRegistry>
|
||||||
</QueryClientProvider>
|
</QueryClientProvider>
|
||||||
</GoogleOAuthProvider>
|
</GoogleOAuthProvider>
|
||||||
</PersistGate>
|
</PersistGate>
|
||||||
</LocalizationProvider>
|
</LocalizationProvider>
|
||||||
</ReduxProvider>
|
</ReduxProvider>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
};
|
|
||||||
|
|
||||||
export default appWithTranslation(App);
|
export default appWithTranslation(App);
|
||||||
|
|||||||
@ -20,7 +20,7 @@ import { useAppDispatch, useAppSelector } from '@/store/hooks';
|
|||||||
import { setModalState } from '@/store/modal/modalSlice';
|
import { setModalState } from '@/store/modal/modalSlice';
|
||||||
import styles from '@/styles/pages/Home.module.scss';
|
import styles from '@/styles/pages/Home.module.scss';
|
||||||
|
|
||||||
import { DIGITALOCEAN_URL, DONATION_URL, GITHUB_URL } from '../constants';
|
import { DIGITALOCEAN_URL, DOCS_URL, DONATION_URL, GITHUB_URL } from '../constants';
|
||||||
|
|
||||||
export const getStaticProps: GetStaticProps = async ({ locale = 'en' }) => {
|
export const getStaticProps: GetStaticProps = async ({ locale = 'en' }) => {
|
||||||
return {
|
return {
|
||||||
@ -170,6 +170,12 @@ const Home: NextPage = () => {
|
|||||||
</Button>
|
</Button>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<a href={DOCS_URL} target="_blank" rel="noreferrer">
|
||||||
|
<Button variant="text" startIcon={<LinkIcon />}>
|
||||||
|
{t<string>('landing.links.links.docs')}
|
||||||
|
</Button>
|
||||||
|
</a>
|
||||||
|
|
||||||
<a href={DONATION_URL} target="_blank" rel="noreferrer">
|
<a href={DONATION_URL} target="_blank" rel="noreferrer">
|
||||||
<Button variant="text" startIcon={<LinkIcon />}>
|
<Button variant="text" startIcon={<LinkIcon />}>
|
||||||
{t<string>('landing.links.links.donate')}
|
{t<string>('landing.links.links.donate')}
|
||||||
@ -180,7 +186,7 @@ const Home: NextPage = () => {
|
|||||||
|
|
||||||
<section className={styles.section}>
|
<section className={styles.section}>
|
||||||
<a href={DIGITALOCEAN_URL} target="_blank" rel="noreferrer">
|
<a href={DIGITALOCEAN_URL} target="_blank" rel="noreferrer">
|
||||||
<Image src="/images/sponsors/digitalocean.svg" alt="Powered By DigitalOcean" width={200} height={40} />
|
<Image src={`/images/sponsors/${theme=="dark"?"digitalocean":"digitaloceanLight"}.svg`} alt="Powered By DigitalOcean" width={200} height={40} />
|
||||||
</a>
|
</a>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
|||||||
@ -71,7 +71,7 @@ const Preview: NextPage<Props> = ({ shortId }) => {
|
|||||||
try {
|
try {
|
||||||
const url = await mutateAsync({ username: resume.user.username, slug: resume.slug });
|
const url = await mutateAsync({ username: resume.user.username, slug: resume.slug });
|
||||||
|
|
||||||
download(`/api${url}`);
|
download(url);
|
||||||
} catch {
|
} catch {
|
||||||
toast.error('Something went wrong, please try again later.');
|
toast.error('Something went wrong, please try again later.');
|
||||||
}
|
}
|
||||||
|
|||||||
101
client/public/images/sponsors/digitaloceanLight.svg
Normal file
101
client/public/images/sponsors/digitaloceanLight.svg
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 604 129" style="enable-background:new 0 0 604 129;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#0069ff;}
|
||||||
|
.st1{fill-rule:evenodd;clip-rule:evenodd;fill:#0069ff;}
|
||||||
|
</style>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path class="st0" d="M174.3,3c4.9,0,8.7,2.9,8.7,8.6c0,5.6-3.8,8.5-8.7,8.5h-7.6v11.1h-3.5V3H174.3z M166.7,17.1h7.2
|
||||||
|
c3,0,5.6-1.8,5.6-5.5c0-3.8-2.5-5.5-5.6-5.5h-7.2V17.1z"/>
|
||||||
|
<path class="st0" d="M208.8,21.7c0,6.1-4.3,10-9.9,10c-5.6,0-9.9-3.9-9.9-10c0-6.1,4.3-10,9.9-10
|
||||||
|
C204.5,11.7,208.8,15.6,208.8,21.7z M192.3,21.7c0,4.5,2.9,7.2,6.6,7.2c3.7,0,6.6-2.7,6.6-7.2c0-4.5-2.9-7.1-6.6-7.1
|
||||||
|
C195.2,14.5,192.3,17.2,192.3,21.7z"/>
|
||||||
|
<path class="st0" d="M234.4,31.3l-5.2-13.8L224,31.3h-2.6L214.1,12h3.6l5.2,14l5.2-14h2.3l5.3,14l5.2-14h3.5L237,31.3H234.4z"/>
|
||||||
|
<path class="st0" d="M253,22.9c0.2,3.7,2.6,5.9,6,5.9c2.8,0,4.8-1.3,5.4-3.4l3.2,0.2c-0.8,3.5-4.1,6.1-8.6,6.1
|
||||||
|
c-5.5,0-9.6-3.7-9.6-10c0-6.3,4-10,9.5-10c5.5,0,8.8,3.7,8.8,9.4v1.8H253z M253,20.3h11.6c-0.1-3.4-2-5.7-5.6-5.7
|
||||||
|
C255.6,14.5,253.2,16.5,253,20.3z"/>
|
||||||
|
<path class="st0" d="M285.4,14.9c-3.4,0-5.6,2.3-5.6,5.3v11.1h-3.2V12h3.2v2.9c0.7-1.6,2.5-3.1,5.7-3.1V14.9z"/>
|
||||||
|
<path class="st0" d="M294.7,22.9c0.2,3.7,2.6,5.9,6,5.9c2.8,0,4.8-1.3,5.4-3.4l3.2,0.2c-0.8,3.5-4.1,6.1-8.6,6.1
|
||||||
|
c-5.5,0-9.6-3.7-9.6-10c0-6.3,4-10,9.5-10c5.5,0,8.8,3.7,8.8,9.4v1.8H294.7z M294.7,20.3h11.6c-0.1-3.4-2-5.7-5.6-5.7
|
||||||
|
C297.4,14.5,294.9,16.5,294.7,20.3z"/>
|
||||||
|
<path class="st0" d="M333.1,31.3v-3.1c-1.1,2-3.6,3.5-6.8,3.5c-5.3,0-9.3-3.8-9.3-10c0-6.2,4-10,9.3-10c3.2,0,5.6,1.4,6.6,3.2V2
|
||||||
|
h3.2v29.4H333.1z M320.3,21.7c0,4.6,2.8,7.2,6.5,7.2c3.6,0,6.2-2.2,6.2-6.6v-1.1c0-4.3-2.6-6.6-6.2-6.6
|
||||||
|
C323.1,14.5,320.3,17.1,320.3,21.7z"/>
|
||||||
|
<path class="st0" d="M361.8,14.9c1.1-1.9,3.4-3.2,6.7-3.2c5.3,0,9.3,3.8,9.3,10c0,6.2-4,10-9.3,10c-3.3,0-5.7-1.5-6.8-3.5v3.1
|
||||||
|
h-3.1V2h3.2V14.9z M361.9,21.1v1.1c0,4.4,2.6,6.6,6.2,6.6c3.7,0,6.5-2.5,6.5-7.2c0-4.6-2.8-7.1-6.5-7.1
|
||||||
|
C364.5,14.5,361.9,16.8,361.9,21.1z"/>
|
||||||
|
<path class="st0" d="M386.3,40.9l4.6-10.7L383.2,12h3.6l5.8,14.5l5.8-14.5h3.6l-12.2,28.9H386.3z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g id="XMLID_2369_">
|
||||||
|
<g>
|
||||||
|
<g id="XMLID_281_">
|
||||||
|
<g id="XMLID_282_">
|
||||||
|
<g>
|
||||||
|
<g id="XMLID_283_">
|
||||||
|
<g id="XMLID_287_">
|
||||||
|
<path id="XMLID_288_" class="st0" d="M64.4,127l0-24.2c25.6,0,45.5-25.4,35.7-52.3c-3.6-10-11.6-17.9-21.6-21.6
|
||||||
|
c-27-9.8-52.3,10-52.3,35.7c0,0,0,0,0,0L2,64.7C2,23.8,41.5-8,84.3,5.4c18.7,5.8,33.6,20.7,39.4,39.4
|
||||||
|
C137,87.6,105.2,127,64.4,127z"/>
|
||||||
|
</g>
|
||||||
|
<polygon id="XMLID_286_" class="st1" points="64.4,102.9 40.4,102.9 40.4,78.9 40.4,78.9 64.4,78.9 64.4,78.9 "/>
|
||||||
|
<polygon id="XMLID_285_" class="st1" points="40.3,121.5 21.8,121.5 21.8,121.5 21.8,102.9 40.4,102.9 40.4,121.5 "/>
|
||||||
|
<path id="XMLID_284_" class="st1" d="M21.9,102.9H6.3c0,0,0,0,0,0V87.4c0,0,0,0,0,0h15.5c0,0,0,0,0,0V102.9z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g id="XMLID_254_">
|
||||||
|
<path id="XMLID_278_" class="st0" d="M200.9,52.4c-5.5-3.8-12.4-5.8-20.5-5.8h-17.5v55.5h17.5c8,0,14.9-2.1,20.5-6.1
|
||||||
|
c3-2.1,5.4-5.1,7.1-8.9c1.7-3.7,2.5-8.2,2.5-13.1c0-4.9-0.8-9.3-2.5-13C206.3,57.4,203.9,54.4,200.9,52.4z M173.1,56h5.5
|
||||||
|
c6.1,0,11.1,1.2,15,3.6c4.2,2.6,6.4,7.4,6.4,14.4c0,7.2-2.2,12.3-6.4,15.1h0c-3.7,2.4-8.7,3.6-14.9,3.6h-5.6V56z"/>
|
||||||
|
<path id="XMLID_277_" class="st0" d="M222.6,45.9c-1.7,0-3.1,0.6-4.3,1.8c-1.2,1.1-1.8,2.6-1.8,4.2c0,1.7,0.6,3.1,1.8,4.3
|
||||||
|
c1.2,1.2,2.6,1.8,4.3,1.8c1.7,0,3.1-0.6,4.3-1.8c1.2-1.2,1.8-2.6,1.8-4.3c0-1.7-0.6-3.1-1.8-4.2
|
||||||
|
C225.7,46.5,224.3,45.9,222.6,45.9z"/>
|
||||||
|
<rect id="XMLID_276_" x="217.6" y="63" class="st0" width="9.8" height="39.1"/>
|
||||||
|
<path id="XMLID_273_" class="st0" d="M263.2,66.3c-3-2.6-6.3-4.2-9.9-4.2c-5.4,0-9.9,1.9-13.4,5.6c-3.5,3.7-5.3,8.4-5.3,14.1
|
||||||
|
c0,5.5,1.8,10.2,5.2,14c3.5,3.7,8,5.5,13.5,5.5c3.8,0,7.1-1.1,9.7-3.1V99c0,3.2-0.9,5.8-2.6,7.5c-1.7,1.7-4.1,2.6-7.1,2.6
|
||||||
|
c-4.5,0-7.4-1.8-10.9-6.5l-6.7,6.4l0.2,0.3c1.4,2,3.7,4,6.6,5.9c2.9,1.9,6.6,2.8,10.9,2.8c5.8,0,10.6-1.8,14.1-5.4
|
||||||
|
c3.5-3.6,5.3-8.4,5.3-14.2V63h-9.7V66.3z M260.6,89.4c-1.7,2-3.9,2.9-6.8,2.9c-2.8,0-5-0.9-6.7-2.9c-1.7-1.9-2.5-4.5-2.5-7.7
|
||||||
|
c0-3.2,0.9-5.8,2.5-7.7c1.7-1.9,3.9-2.9,6.7-2.9c2.8,0,5,1,6.8,2.9c1.7,2,2.6,4.6,2.6,7.7C263.2,84.9,262.3,87.5,260.6,89.4z"/>
|
||||||
|
<rect id="XMLID_272_" x="281.3" y="63" class="st0" width="9.8" height="39.1"/>
|
||||||
|
<path id="XMLID_271_" class="st0" d="M286.3,45.9c-1.7,0-3.1,0.6-4.3,1.8c-1.2,1.1-1.8,2.6-1.8,4.2c0,1.7,0.6,3.1,1.8,4.3
|
||||||
|
c1.2,1.2,2.6,1.8,4.3,1.8c1.7,0,3.1-0.6,4.3-1.8c1.2-1.2,1.8-2.6,1.8-4.3c0-1.7-0.6-3.1-1.8-4.2C289.4,46.5,288,45.9,286.3,45.9
|
||||||
|
z"/>
|
||||||
|
<path id="XMLID_270_" class="st0" d="M312.7,52.5H303V63h-5.6v9h5.6v16.2c0,5.1,1,8.7,3,10.8c2,2.1,5.6,3.2,10.6,3.2
|
||||||
|
c1.6,0,3.2-0.1,4.8-0.2l0.4,0v-9l-3.4,0.2c-2.3,0-3.9-0.4-4.7-1.2c-0.8-0.8-1.1-2.6-1.1-5.2V72h9.2v-9h-9.2V52.5z"/>
|
||||||
|
<rect id="XMLID_269_" x="368" y="46.6" class="st0" width="9.8" height="55.5"/>
|
||||||
|
<path id="XMLID_268_" class="st0" d="M477.3,88.2c-1.8,2-3.6,3.7-4.9,4.6v0c-1.4,0.9-3.1,1.3-5.1,1.3c-2.9,0-5.2-1.1-7.1-3.2
|
||||||
|
c-1.9-2.2-2.8-4.9-2.8-8.3s0.9-6.1,2.8-8.2c1.9-2.2,4.2-3.2,7.1-3.2c3.2,0,6.5,2,9.4,5.4l6.5-6.2l0,0c-4.2-5.5-9.7-8.1-16.1-8.1
|
||||||
|
c-5.4,0-10.1,2-13.9,5.8c-3.8,3.9-5.7,8.8-5.7,14.6s1.9,10.7,5.7,14.6c3.8,3.9,8.5,5.9,13.9,5.9c7.1,0,12.9-3.1,16.8-8.7
|
||||||
|
L477.3,88.2z"/>
|
||||||
|
<path id="XMLID_265_" class="st0" d="M517.7,68.5c-1.4-1.9-3.3-3.5-5.7-4.7c-2.3-1.1-5.1-1.7-8.1-1.7c-5.5,0-10,2-13.4,6
|
||||||
|
c-3.3,4-4.9,8.9-4.9,14.7c0,5.9,1.8,10.8,5.4,14.6c3.6,3.7,8.4,5.6,14.2,5.6c6.6,0,12.1-2.7,16.2-8l0.2-0.3l-6.4-6.2l0,0
|
||||||
|
c-0.6,0.7-1.4,1.5-2.2,2.3c-1,0.9-1.9,1.6-2.9,2.1c-1.5,0.7-3.1,1.1-5,1.1c-2.7,0-5-0.8-6.7-2.4c-1.6-1.5-2.6-3.5-2.8-5.9h26.1
|
||||||
|
l0.1-3.6c0-2.5-0.3-5-1-7.3C520.1,72.6,519.1,70.4,517.7,68.5z M496.2,77.7c0.5-1.9,1.3-3.4,2.6-4.6c1.3-1.3,3.1-2,5.2-2
|
||||||
|
c2.4,0,4.2,0.7,5.5,2c1.2,1.2,1.8,2.8,2,4.6H496.2z"/>
|
||||||
|
<path id="XMLID_262_" class="st0" d="M555.5,66L555.5,66c-3-2.5-7.1-3.8-12.3-3.8c-3.3,0-6.3,0.7-9.1,2.1
|
||||||
|
c-2.6,1.3-5.1,3.5-6.7,6.3l0.1,0.1l6.3,6c2.6-4.1,5.5-5.6,9.3-5.6c2.1,0,3.8,0.6,5.1,1.6c1.3,1.1,1.9,2.5,1.9,4.2v1.9
|
||||||
|
c-2.4-0.7-4.9-1.1-7.2-1.1c-4.9,0-8.9,1.2-11.8,3.4c-3,2.3-4.5,5.6-4.5,9.8c0,3.7,1.3,6.7,3.8,8.9c2.6,2.1,5.8,3.2,9.5,3.2
|
||||||
|
c3.7,0,7.3-1.5,10.4-4.1v3.2h9.7V77C560,72.2,558.5,68.5,555.5,66z M538,87.2c1.1-0.8,2.7-1.2,4.7-1.2c2.4,0,4.9,0.5,7.5,1.4
|
||||||
|
v3.8c-2.1,2-5,3-8.5,3c-1.7,0-3-0.4-3.9-1.1c-0.9-0.7-1.3-1.7-1.3-2.8C536.4,89,536.9,88,538,87.2z"/>
|
||||||
|
<path id="XMLID_261_" class="st0" d="M597.9,66.7c-2.7-3.1-6.6-4.6-11.5-4.6c-3.9,0-7.1,1.1-9.4,3.3V63h-9.7v39.1h9.8V80.6
|
||||||
|
c0-3,0.7-5.3,2.1-7c1.4-1.7,3.3-2.5,5.8-2.5c2.2,0,3.9,0.7,5.2,2.2c1.3,1.5,1.9,3.6,1.9,6.2v22.7h9.8V79.5
|
||||||
|
C602,74.1,600.6,69.8,597.9,66.7z"/>
|
||||||
|
<path id="XMLID_258_" class="st0" d="M355.6,66L355.6,66c-3-2.5-7.1-3.8-12.3-3.8c-3.3,0-6.3,0.7-9.1,2.1
|
||||||
|
c-2.6,1.3-5.1,3.5-6.7,6.3l0.1,0.1l6.3,6c2.6-4.1,5.5-5.6,9.3-5.6c2.1,0,3.8,0.6,5.1,1.6c1.3,1.1,1.9,2.5,1.9,4.2v1.9
|
||||||
|
c-2.4-0.7-4.9-1.1-7.2-1.1c-4.9,0-8.9,1.2-11.8,3.4c-3,2.3-4.5,5.6-4.5,9.8c0,3.7,1.3,6.7,3.8,8.9c2.6,2.1,5.8,3.2,9.5,3.2
|
||||||
|
c3.7,0,7.3-1.5,10.4-4.1v3.2h9.7V77C360.2,72.2,358.7,68.5,355.6,66z M338.2,87.2c1.1-0.8,2.7-1.2,4.7-1.2
|
||||||
|
c2.4,0,4.9,0.5,7.5,1.4v3.8c-2.1,2-5,3-8.5,3c-1.7,0-3-0.4-3.9-1.1c-0.9-0.7-1.3-1.7-1.3-2.8C336.6,89,337.1,88,338.2,87.2z"/>
|
||||||
|
<path id="XMLID_255_" class="st0" d="M413.6,103c-15.8,0-28.6-12.8-28.6-28.6s12.8-28.6,28.6-28.6s28.6,12.8,28.6,28.6
|
||||||
|
S429.4,103,413.6,103z M413.6,55.8c-10.2,0-18.5,8.3-18.5,18.5s8.3,18.5,18.5,18.5s18.5-8.3,18.5-18.5S423.8,55.8,413.6,55.8z"
|
||||||
|
/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 7.7 KiB |
368
client/public/locales/am/builder.json
Normal file
368
client/public/locales/am/builder.json
Normal file
@ -0,0 +1,368 @@
|
|||||||
|
{
|
||||||
|
"common": {
|
||||||
|
"actions": {
|
||||||
|
"add": "አዲስ {{token}} ጨምር",
|
||||||
|
"delete": "{{token}} አጥፋ",
|
||||||
|
"edit": "{{token}} አዘምን"
|
||||||
|
},
|
||||||
|
"columns": {
|
||||||
|
"heading": "አምዶች",
|
||||||
|
"tooltip": "የአምዶች ብዛት ይቀይሩ"
|
||||||
|
},
|
||||||
|
"form": {
|
||||||
|
"date": {
|
||||||
|
"label": "ቀን"
|
||||||
|
},
|
||||||
|
"description": {
|
||||||
|
"label": "መግለጫ"
|
||||||
|
},
|
||||||
|
"email": {
|
||||||
|
"label": "የኢሜል አድራሻ"
|
||||||
|
},
|
||||||
|
"end-date": {
|
||||||
|
"help-text": "አሁንም ካለ፤ ይህንን ቦታ ክፍት ይተውት።",
|
||||||
|
"label": "የመጨረሻ ቀን"
|
||||||
|
},
|
||||||
|
"keywords": {
|
||||||
|
"label": "ቁልፍ ቃላት"
|
||||||
|
},
|
||||||
|
"level": {
|
||||||
|
"label": "ደረጃ"
|
||||||
|
},
|
||||||
|
"levelNum": {
|
||||||
|
"label": "ደረጃ (ቁጥር)"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "ስም"
|
||||||
|
},
|
||||||
|
"phone": {
|
||||||
|
"label": "የስልክ ቁጥር"
|
||||||
|
},
|
||||||
|
"position": {
|
||||||
|
"label": "የስራ ሚና"
|
||||||
|
},
|
||||||
|
"start-date": {
|
||||||
|
"label": "የመጀመሪያ ቀን"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"label": "ንዑስ ርዕስ"
|
||||||
|
},
|
||||||
|
"summary": {
|
||||||
|
"label": "ማጠቃለያ"
|
||||||
|
},
|
||||||
|
"title": {
|
||||||
|
"label": "ርዕስ"
|
||||||
|
},
|
||||||
|
"url": {
|
||||||
|
"label": "ድህረገፅ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"glossary": {
|
||||||
|
"page": "ገጽ"
|
||||||
|
},
|
||||||
|
"list": {
|
||||||
|
"actions": {
|
||||||
|
"delete": "አጥፋ",
|
||||||
|
"duplicate": "አባዛ",
|
||||||
|
"edit": "አዘምን"
|
||||||
|
},
|
||||||
|
"empty-text": "ይህ ዝርዝር ባዶ ነው።"
|
||||||
|
},
|
||||||
|
"tooltip": {
|
||||||
|
"delete-item": "እርግጠኛ ነዎት ይህንn ማጥፋት ይፈልጋሉ? ይህ የማይመለስ ተግባር ነው።",
|
||||||
|
"delete-section": "ክፍሉን አጥፋ",
|
||||||
|
"rename-section": "ክፍሉን እንደገና ይሰይሙ",
|
||||||
|
"toggle-visibility": "ዕይታውን ቀያይር"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"controller": {
|
||||||
|
"tooltip": {
|
||||||
|
"center-artboard": "መሃል የሰዕል ማሳያ",
|
||||||
|
"copy-link": "የስራ ልምድ ሰነዱን ሊንክ ቅዳ",
|
||||||
|
"export-pdf": "PDF አውጣ",
|
||||||
|
"toggle-orientation": "የገጽ አቀማመጥን ቀያይር",
|
||||||
|
"toggle-page-break-line": "የገጽ መግቻ መስመርን ቀያይር",
|
||||||
|
"toggle-sidebars": "የጎን ክፍሎችን ቀይር",
|
||||||
|
"zoom-in": "አቅርብ",
|
||||||
|
"zoom-out": "አሳንስ",
|
||||||
|
"undo": "ቀልብስ",
|
||||||
|
"redo": "ድገም"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"header": {
|
||||||
|
"menu": {
|
||||||
|
"delete": "አጥፋ",
|
||||||
|
"duplicate": "አብዛ",
|
||||||
|
"rename": "ዳግም ሰይም",
|
||||||
|
"share-link": "ሊንክ አጋራ",
|
||||||
|
"tooltips": {
|
||||||
|
"delete": "እርግጠኛ ነዎት ይህን የስራ ልምድ ሰነድ ማጥፋት ይፈልጋሉ? ይህ የማይመለስ ተግባር ነው።",
|
||||||
|
"share-link": "የሥራ ልምድዎን ለሌሎች እንዲታይ ለማድረግ ዕይታውን ወደ ይፋዊ መለወጥ ያስፈልግዎታል።"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"leftSidebar": {
|
||||||
|
"sections": {
|
||||||
|
"awards": {
|
||||||
|
"form": {
|
||||||
|
"awarder": {
|
||||||
|
"label": "ሸላሚ"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"basics": {
|
||||||
|
"actions": {
|
||||||
|
"photo-filters": "የፎቶ ማጣሪያዎች"
|
||||||
|
},
|
||||||
|
"heading": "መሰረታዊ ነገሮች",
|
||||||
|
"headline": {
|
||||||
|
"label": "ርዕስ"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "ሙሉ ስም"
|
||||||
|
},
|
||||||
|
"birthdate": {
|
||||||
|
"label": "የትውልድ ቀን"
|
||||||
|
},
|
||||||
|
"photo-filters": {
|
||||||
|
"effects": {
|
||||||
|
"border": {
|
||||||
|
"label": "ድንበር"
|
||||||
|
},
|
||||||
|
"grayscale": {
|
||||||
|
"label": "ግራጫ ልኬት"
|
||||||
|
},
|
||||||
|
"heading": "ተፅዕኖዎች"
|
||||||
|
},
|
||||||
|
"shape": {
|
||||||
|
"heading": "ቅርጽ"
|
||||||
|
},
|
||||||
|
"size": {
|
||||||
|
"heading": "መጠን (በፒክስል)"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"photo-upload": {
|
||||||
|
"tooltip": {
|
||||||
|
"remove": "ፎቶ አስወግድ",
|
||||||
|
"upload": "ፎቶ ስቀል"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"certifications": {
|
||||||
|
"form": {
|
||||||
|
"issuer": {
|
||||||
|
"label": "ሰጪ አካል"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"education": {
|
||||||
|
"form": {
|
||||||
|
"area-study": {
|
||||||
|
"label": "የጥናት ዙሪያ"
|
||||||
|
},
|
||||||
|
"courses": {
|
||||||
|
"label": "ትምህርቶች"
|
||||||
|
},
|
||||||
|
"degree": {
|
||||||
|
"label": "ዲግሪ"
|
||||||
|
},
|
||||||
|
"grade": {
|
||||||
|
"label": "ውጤት"
|
||||||
|
},
|
||||||
|
"institution": {
|
||||||
|
"label": "ተቋም"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"location": {
|
||||||
|
"address": {
|
||||||
|
"label": "አድራሻ"
|
||||||
|
},
|
||||||
|
"city": {
|
||||||
|
"label": "ከተማ"
|
||||||
|
},
|
||||||
|
"country": {
|
||||||
|
"label": "ሀገር"
|
||||||
|
},
|
||||||
|
"heading": "አካባቢ",
|
||||||
|
"postal-code": {
|
||||||
|
"label": "የፖስታ ኮድ"
|
||||||
|
},
|
||||||
|
"region": {
|
||||||
|
"label": "ክልል"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"profiles": {
|
||||||
|
"form": {
|
||||||
|
"network": {
|
||||||
|
"label": "አውታረ መረብ"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"label": "የተጠቃሚ ስም"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "መለያዎች",
|
||||||
|
"heading_one": "መለያ"
|
||||||
|
},
|
||||||
|
"publications": {
|
||||||
|
"form": {
|
||||||
|
"publisher": {
|
||||||
|
"label": "አታሚ"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"references": {
|
||||||
|
"form": {
|
||||||
|
"relationship": {
|
||||||
|
"label": "ዝምድና"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"section": {
|
||||||
|
"heading": "ክፍል"
|
||||||
|
},
|
||||||
|
"volunteer": {
|
||||||
|
"form": {
|
||||||
|
"organization": {
|
||||||
|
"label": "ድርጅት"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rightSidebar": {
|
||||||
|
"sections": {
|
||||||
|
"css": {
|
||||||
|
"heading": "የራስ CSS"
|
||||||
|
},
|
||||||
|
"export": {
|
||||||
|
"heading": "አውጣ",
|
||||||
|
"json": {
|
||||||
|
"primary": "JSON",
|
||||||
|
"secondary": "ወደ Reactive Resume ተመልሶ ሊመጣ የሚችል የስራ ልምድ ሰነድ የJSON ቅጂዎትን ያውርዱ።"
|
||||||
|
},
|
||||||
|
"pdf": {
|
||||||
|
"loading": {
|
||||||
|
"primary": "PDF በመስራት ላይ",
|
||||||
|
"secondary": "እባክዎ PDF እስኪሰራ ይጠብቁ፣ ይህ እስከ 15 ሰከንድ ሊወስድ ይችላል።"
|
||||||
|
},
|
||||||
|
"normal": {
|
||||||
|
"primary": "PDF",
|
||||||
|
"secondary": "ማተም እና መላክ የሚችሉትን የስራ ልምድ ሰነድዎን በPDF ያውርዱ። ይህ ፋይል ለተጨማሪ አርትዖት ተመልሶ ሊመጣ አይችልም።"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"layout": {
|
||||||
|
"heading": "አቀማመጥ",
|
||||||
|
"tooltip": {
|
||||||
|
"reset-layout": "አቀማመጡን መልስ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"links": {
|
||||||
|
"bugs-features": {
|
||||||
|
"body": "የስራ ልምድ ሰነድዎን ለመስራት የሚከለክሎት ነገር አለ? ወይም የሚጨምሩት አስደናቂ ሀሳብ አለዎት? በ GitHub ላይ ጉዳይዎን ያቅርቡ።",
|
||||||
|
"button": "GitHub ጉዳዮች",
|
||||||
|
"heading": "ችግሮች? የባህሪ ጥያቄዎች?"
|
||||||
|
},
|
||||||
|
"donate": {
|
||||||
|
"body": "Reactive Resumeን መጠቀም ከወደዱ እባክዎን መተግበሪያው እንዲሰራ እና ያለ ማስታወቂያ ሁሌም በነፃ እንዲቀጥል በተቻለዎት መጠን ለመለገስ ያስቡበት።",
|
||||||
|
"button": "ቡና ይጋብዙኝ",
|
||||||
|
"heading": "ለ Reactive Resume ይለግሱ"
|
||||||
|
},
|
||||||
|
"github": "የምንጭ ኮድ",
|
||||||
|
"docs": "ሰነዶች",
|
||||||
|
"heading": "አገናኞች"
|
||||||
|
},
|
||||||
|
"settings": {
|
||||||
|
"global": {
|
||||||
|
"date": {
|
||||||
|
"primary": "ቀን",
|
||||||
|
"secondary": "በመላው መተግበሪያ ላይ የሚጠቀሙበት የቀን አይነት"
|
||||||
|
},
|
||||||
|
"heading": "ዓለም አቀፍ",
|
||||||
|
"language": {
|
||||||
|
"primary": "ቋንቋ",
|
||||||
|
"secondary": "በመላው መተግበሪያ ላይ የሚጠቀሙበት ቋንቋ"
|
||||||
|
},
|
||||||
|
"theme": {
|
||||||
|
"primary": "ገጽታ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "ቅንብሮች",
|
||||||
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "የወረቀት መጠን",
|
||||||
|
"secondary": "ከቆመበት ቀጥል ገጾችዎ ልኬቶችን ይወስናል"
|
||||||
|
},
|
||||||
|
"break-line": {
|
||||||
|
"primary": "መስመር መቁረጫ",
|
||||||
|
"secondary": "የA4 ገጽ ቁመትን ለመለየት በሁሉም ገጾች ላይ መስመር አሳይ"
|
||||||
|
},
|
||||||
|
"heading": "ገጽ",
|
||||||
|
"orientation": {
|
||||||
|
"disabled": "አንድ ገጽ ብቻ ሲኖር ምንም ተጽእኖ የለውም",
|
||||||
|
"primary": "አቅጣጫ",
|
||||||
|
"secondary": "ገጾችን በአግድም ሆነ በቋሚ ለማሳየት"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"resume": {
|
||||||
|
"heading": "የስራልምድ ሰነድ",
|
||||||
|
"reset": {
|
||||||
|
"primary": "ሁሉንም ነገር ዳግም አስጀምር",
|
||||||
|
"secondary": "በጣም ብዙ ስህተቶችን ሰርተዋል? ሁሉንም ለውጦች ዳግም ለማስጀመር እና ከባዶ ለመጀመር እዚህ ይንኩ። ይጠንቀቁ፤ ይህ እርምጃ ወደ ኋላ መመለስ አይቻልም።"
|
||||||
|
},
|
||||||
|
"sample": {
|
||||||
|
"primary": "የናሙና መረጃን ጫን",
|
||||||
|
"secondary": "የት መጀመር እንዳለብዎት እርግጠኛ አይደሉም? የተሟላ የስራ ልምድ ሰነድ እንዴት እንደሚመስል ለማየት አንዳንድ ናሙና መረጃ ለመጫን እዚህ ይንኩ።"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"sharing": {
|
||||||
|
"heading": "ማጋራት",
|
||||||
|
"short-url": {
|
||||||
|
"label": "አጭር ማስፈንጠሪያ ይመርጣሉ።"
|
||||||
|
},
|
||||||
|
"visibility": {
|
||||||
|
"subtitle": "ማስፈንጥሪያ ያለው ማንኛውም ሰው የእርስዎን የስራ ልምድ እንዲመለከት ይፍቀዱለት",
|
||||||
|
"title": "ይፋዊ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"templates": {
|
||||||
|
"heading": "ምሳሌዎች"
|
||||||
|
},
|
||||||
|
"theme": {
|
||||||
|
"form": {
|
||||||
|
"background": {
|
||||||
|
"label": "ዳራ"
|
||||||
|
},
|
||||||
|
"primary": {
|
||||||
|
"label": "ዋና"
|
||||||
|
},
|
||||||
|
"text": {
|
||||||
|
"label": "ጽሑፍ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "ገጽታ"
|
||||||
|
},
|
||||||
|
"typography": {
|
||||||
|
"form": {
|
||||||
|
"font-family": {
|
||||||
|
"label": "የጽሁፍ ቅርጽ ቤተሰብ"
|
||||||
|
},
|
||||||
|
"font-size": {
|
||||||
|
"label": "የጽሁፍ ቅርጽ መጠን"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "የፊደል አጻጻፍ",
|
||||||
|
"widgets": {
|
||||||
|
"body": {
|
||||||
|
"label": "ሐተታ"
|
||||||
|
},
|
||||||
|
"headings": {
|
||||||
|
"label": "ርዕሶች"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
29
client/public/locales/am/common.json
Normal file
29
client/public/locales/am/common.json
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"avatar": {
|
||||||
|
"menu": {
|
||||||
|
"greeting": "ሰላም",
|
||||||
|
"logout": "ውጣ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"footer": {
|
||||||
|
"credit": "ተወዳጅ ፕሮጀክት በ<1>Amruth Pillai</1>",
|
||||||
|
"license": "በማህበረሰቡ ፣ ለማህበረሰቡ።"
|
||||||
|
},
|
||||||
|
"markdown": {
|
||||||
|
"help-text": "ይህ ክፍል ይደግፋል <1>markdown</1> አፃፃፍ ይደግፋል።"
|
||||||
|
},
|
||||||
|
"date": {
|
||||||
|
"present": "አሁን"
|
||||||
|
},
|
||||||
|
"subtitle": "ነፃ እና ክፍት የስራ ልምድ ሰነድ መገንቢያ",
|
||||||
|
"title": "Reactive Resume",
|
||||||
|
"toast": {
|
||||||
|
"error": {
|
||||||
|
"upload-file-size": "እባክዎ ከ2 ሜጋባይት በታች የሆኑ ፋይሎችን ብቻ ይስቀሉ።",
|
||||||
|
"upload-photo-size": "እባክዎትን ከ2 ሜጋባይት በታች የሆኑ ፎቶዎችን ብቻ ይስቀሉ፣ ቢቻል ካሬ።"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"resume-link-copied": "ወደ የስራ ታሪክዎ የሚወስድ አገናኝ በሰሌዳዎ ተይዟል።"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
25
client/public/locales/am/dashboard.json
Normal file
25
client/public/locales/am/dashboard.json
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"create-resume": {
|
||||||
|
"subtitle": "ከባዶ ጀምር",
|
||||||
|
"title": "አዲስ የሥራ ታሪክ ፍጠር"
|
||||||
|
},
|
||||||
|
"import-external": {
|
||||||
|
"subtitle": "LinkedIn, JSON Resume, Reactive Resume",
|
||||||
|
"title": "ከውጭ ምንጮች አስገባ"
|
||||||
|
},
|
||||||
|
"resume": {
|
||||||
|
"menu": {
|
||||||
|
"delete": "አጥፋ",
|
||||||
|
"duplicate": "አብዛ",
|
||||||
|
"open": "ክፈት",
|
||||||
|
"rename": "እንደገና ይሰይሙ",
|
||||||
|
"share-link": "ሊንክ አጋራ",
|
||||||
|
"tooltips": {
|
||||||
|
"delete": "እርግጠኛ ነዎት ይህን የሥራ ታሪክ ማጥፋት ይፈልጋሉ? ይህ የማይመለስ ተግባር ነው።",
|
||||||
|
"share-link": "የስራ ልምድዎን ለሌሎች እንዲታይ ለማድረግ ዕይታውን ወደ ይፋዊ መቀየር አለብዎት።"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"timestamp": "መጨረሻ የተሻሻለው {{timestamp}} በፊት"
|
||||||
|
},
|
||||||
|
"title": "ዳሽቦርድ"
|
||||||
|
}
|
||||||
42
client/public/locales/am/landing.json
Normal file
42
client/public/locales/am/landing.json
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
{
|
||||||
|
"actions": {
|
||||||
|
"app": "ወደ መተግበሪያ ይሂዱ",
|
||||||
|
"login": "ግባ",
|
||||||
|
"logout": "ውጣ",
|
||||||
|
"register": "ይመዝገቡ"
|
||||||
|
},
|
||||||
|
"features": {
|
||||||
|
"heading": "መገለጫዎች",
|
||||||
|
"list": {
|
||||||
|
"ads": "ምንም ማስታወቂያ የለም",
|
||||||
|
"export": "የስራ ልምድዎን ወደ JSON ወይም PDF ቅርጸት ይላኩ።",
|
||||||
|
"free": "ሁሌም ነጻ",
|
||||||
|
"import": "መረጃ ከ LinkedIn, JSON Resume ማምጣት",
|
||||||
|
"languages": "በተለያዩ ቋንቋዎች ተደራሽ",
|
||||||
|
"more": "እና ብዙ ተጨማሪ አስደሳች መገለጫዎች፤ <1>ሁሉንም እዚህ ያንብቡ</1>",
|
||||||
|
"tracking": "ምንም የተጠቃሚ መከታተያ የለም።"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"links": {
|
||||||
|
"heading": "አገናኞች",
|
||||||
|
"links": {
|
||||||
|
"donate": "ይለግሱ",
|
||||||
|
"github": "የምንጭ ኮድ",
|
||||||
|
"docs": "ሰነዶች",
|
||||||
|
"privacy": "የግላዊነት መመሪያ",
|
||||||
|
"service": "የአገልግሎት ውሎች"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"screenshots": {
|
||||||
|
"heading": "የገጽ እይታዎች"
|
||||||
|
},
|
||||||
|
"testimonials": {
|
||||||
|
"heading": "ምስክሮች",
|
||||||
|
"body": "ጥሩም ይሁን መጥፎ፣ ስለ Reactive Resume እና ለእርስዎ እንዴት እንደነበረ አስተያየትዎን መስማት እፈልጋለሁ።<br/>በአለም ዙሪያ በተጠቃሚዎች የተላኩ አንዳንድ መልዕክቶች እነዚሁና",
|
||||||
|
"contact": "በዚህ በኩል ልታገኙኝ <1>ኢሜል</1> ትችላላችሁ ወይም <3>በድረ-ገጽ</3> ላይ ባለው የእውቂያ ቅጽ ማግኘት ይችላሉ።"
|
||||||
|
},
|
||||||
|
"summary": {
|
||||||
|
"body": "Reactive Resume የእርስዎን የስራ ታሪክ የመፍጠር፣ የማዘመን እና የማጋራት መደበኛ ተግባራትን እንደ 1 2 3 ቀላል ለማድረግ የተሰራ ነፃ እና በነጻ የሚገኝ የስራ ልምድ ሰነድ መገንቢያ ነው። በዚህ መገልገያ የተለያዩ የስራ ልምድ ሰነዶችን በመስራት፣ ከቀጣሪዎች ወይም ከጓደኞች ጋር በማስፈንጠሪያ ማጋራት እና እንደ PDF ማተም ፣ ሁሉንም በነጻ ፣ ምንም ማስታወቂያ ሳይኖር ፣ ምንም ክትትል ሳይደረግ ፣ የመረጃዎን ትክክለኛነት እና ግላዊነት ተጠብቆ ማከናወን ይችላሉ።",
|
||||||
|
"heading": "ማጠቃለያ"
|
||||||
|
}
|
||||||
|
}
|
||||||
135
client/public/locales/am/modals.json
Normal file
135
client/public/locales/am/modals.json
Normal file
@ -0,0 +1,135 @@
|
|||||||
|
{
|
||||||
|
"auth": {
|
||||||
|
"forgot-password": {
|
||||||
|
"actions": {
|
||||||
|
"send-email": "የይለፍ ቃል ዳግም ማስጀመሪያ ኢሜይል ላክ"
|
||||||
|
},
|
||||||
|
"body": "መልሰው ማግኘት ከሚፈልጉት መለያ ጋር የተያያዘውን የኢሜይል አድራሻ ያስገቡ።",
|
||||||
|
"form": {
|
||||||
|
"email": {
|
||||||
|
"label": "የኢሜል አድራሻ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "የይለፍ ቃልዎን ረሱ?",
|
||||||
|
"help-text": "መለያው ካለ የይለፍ ቃልዎን እንደገና ለማስጀመር የሚያስችል ኢሜል ይደርስዎታል።"
|
||||||
|
},
|
||||||
|
"login": {
|
||||||
|
"actions": {
|
||||||
|
"login": "ግባ"
|
||||||
|
},
|
||||||
|
"body": "እባክዎ የስራ ልምድ ሰነድዎ ወዳለበት ለመግባት፣ ለማግኘት፣ ለማስተዳደር እና ለማጋራት ከመለያዎ ጋር የተያያዘውን የተጠቃሚ ስምዎን እና የይለፍ ቃልዎን ያስገቡ።",
|
||||||
|
"form": {
|
||||||
|
"password": {
|
||||||
|
"label": "የይለፍ ቃል"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"help-text": "እንዲሁም የኢሜል አድራሻዎን ማስገባት ይችላሉ",
|
||||||
|
"label": "የተጠቃሚ ስም"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "ወደ መለያዎ ይግቡ",
|
||||||
|
"recover-text": "የይለፍ ቃልዎን ከረሱት፣ እዚህ <1>መለያዎን መልሰው ማግኘት</1> ይችላሉ።",
|
||||||
|
"register-text": "ከሌለዎት እዚህ <1>መለያ መፍጠር</1> ይችላሉ።"
|
||||||
|
},
|
||||||
|
"register": {
|
||||||
|
"actions": {
|
||||||
|
"register": "ይመዝገቡ",
|
||||||
|
"google": "በጉግል ይመዝገቡ"
|
||||||
|
},
|
||||||
|
"body": "እባክዎ መለያ ለመፍጠር የእርስዎን የግል መረጃ ያስገቡ።",
|
||||||
|
"form": {
|
||||||
|
"confirm-password": {
|
||||||
|
"label": "የይለፍ ቃልዎን አረጋግጥ"
|
||||||
|
},
|
||||||
|
"email": {
|
||||||
|
"label": "የኢሜል አድራሻ"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "ሙሉ ስም"
|
||||||
|
},
|
||||||
|
"password": {
|
||||||
|
"label": "የይለፍ ቃል"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"label": "የተጠቃሚ ስም"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "መለያ ፍጠር",
|
||||||
|
"loginText": "መለያ ካለዎት <1>እዚህ መግባት</1> ይችላሉ።"
|
||||||
|
},
|
||||||
|
"reset-password": {
|
||||||
|
"actions": {
|
||||||
|
"set-password": "አዲስ የይለፍ ቃል ያዘጋጁ"
|
||||||
|
},
|
||||||
|
"body": "ለመለያዎ አዲስ የይለፍ ቃል ያስገቡ።",
|
||||||
|
"form": {
|
||||||
|
"confirm-password": {
|
||||||
|
"label": "የይለፍ ቃልዎን አረጋግጡ"
|
||||||
|
},
|
||||||
|
"password": {
|
||||||
|
"label": "የይለፍ ቃል"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "የይለፍ ቃልዎን ዳግም ያስጀምሩ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dashboard": {
|
||||||
|
"create-resume": {
|
||||||
|
"actions": {
|
||||||
|
"create-resume": "የስራ ታሪክ ሰነድ ይፍጠሩ"
|
||||||
|
},
|
||||||
|
"body": "ስም በመስጠት የስራ ልምድዎ ሰነድዎን መገንባት ይጀምሩ። መጠሪያው ለሚያመለክቱበት የስራ ሚና ወይም የሚወዱት ምግብ ሊሆን ይችላል።",
|
||||||
|
"form": {
|
||||||
|
"name": {
|
||||||
|
"label": "ስም"
|
||||||
|
},
|
||||||
|
"public": {
|
||||||
|
"label": "በይፋ ተደራሽ ነው?"
|
||||||
|
},
|
||||||
|
"slug": {
|
||||||
|
"label": "ማስፈንጠሪያ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "አዲስ የስራ ታሪክ ሰነድ ይፍጠሩ"
|
||||||
|
},
|
||||||
|
"import-external": {
|
||||||
|
"heading": "ከውጭ ምንጮች አስገባ",
|
||||||
|
"json-resume": {
|
||||||
|
"actions": {
|
||||||
|
"upload-json": "JSON ስቀል"
|
||||||
|
},
|
||||||
|
"body": "ለመቀጠል ዝግጁ የሆነ <1>የተረጋገጠ JSON ሰነድ</1> ካለዎት በReactive Resume ላይ ስራዎን ለማፋጠን ሊጠቀሙበት ይችላሉ። ከታች ያለውን አዝራር በመጫን የሚሰራ JSON ፋይል ይስቀሉ።",
|
||||||
|
"heading": "ከ JSON ሰነድ"
|
||||||
|
},
|
||||||
|
"linkedin": {
|
||||||
|
"actions": {
|
||||||
|
"upload-archive": "የ ZIP ማህደር ስቀል"
|
||||||
|
},
|
||||||
|
"body": "መረጃዎን ከ LinkedIn ወደ በመላክ እና Reactive Resume ላይ በራስ-ሙላ መስኮችን በመጠቀም ጊዜ መቆጠብ ይችላሉ። በ LinkedIn ላይ ወደ <1>የመረጃ ግላዊነት</1> ክፍል ይሂዱ እና የመረጃ ማህደርዎን ይጠይቁ። ከተገኘ በኋላ፣ ከታች በሚገኘው የ ZIP ፋይሉን ይስቀሉ።",
|
||||||
|
"heading": "ከ LinkedIn ስቀል"
|
||||||
|
},
|
||||||
|
"reactive-resume": {
|
||||||
|
"actions": {
|
||||||
|
"upload-json": "JSON ስቀል",
|
||||||
|
"upload-json-v2": "JSON v2 ይስቀሉ።"
|
||||||
|
},
|
||||||
|
"body": "አሁን ካለው Reactive Resume ስሪት ጋር ወደ ውጭ የተላከ JSON ካለዎት፣ እንደገና ሊስተካከል የሚችል ስሪት ለማግኘት ወደዚህ መልሰው ማስገባት ይችላሉ።",
|
||||||
|
"heading": "ከ Reactive Resume ስቀል"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rename-resume": {
|
||||||
|
"actions": {
|
||||||
|
"rename-resume": "የስራ ታሪክ ሰነዱን ደግመው ይሰይሙ"
|
||||||
|
},
|
||||||
|
"form": {
|
||||||
|
"name": {
|
||||||
|
"label": "ስም"
|
||||||
|
},
|
||||||
|
"slug": {
|
||||||
|
"label": "ማስፈንጥሪያ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "የስራ ታሪክ ሰነዱን ደግመው ይሰይሙ"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "تبديل سطر الصفحة",
|
"toggle-page-break-line": "تبديل سطر الصفحة",
|
||||||
"toggle-sidebars": "تبديل الشريط الجانبي",
|
"toggle-sidebars": "تبديل الشريط الجانبي",
|
||||||
"zoom-in": "تكبير",
|
"zoom-in": "تكبير",
|
||||||
"zoom-out": "تصغير"
|
"zoom-out": "تصغير",
|
||||||
|
"undo": "الغاء التحميل",
|
||||||
|
"redo": "إعادة"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "تبرع الى Reactive Resume"
|
"heading": "تبرع الى Reactive Resume"
|
||||||
},
|
},
|
||||||
"github": "الشفرة المصدرية",
|
"github": "الشفرة المصدرية",
|
||||||
|
"docs": "توثيق",
|
||||||
"heading": "الروابط"
|
"heading": "الروابط"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "الإعدادات",
|
"heading": "الإعدادات",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "حجم الورق",
|
||||||
|
"secondary": "تحدد أبعاد صفحات سيرتك الذاتية"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "خط فاصل",
|
"primary": "خط فاصل",
|
||||||
"secondary": "اعرض خط في كل الصفحات لتحديد ارتفاع صفحة A4"
|
"secondary": "اعرض خط في كل الصفحات لتحديد ارتفاع صفحة A4"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "تبرّع",
|
"donate": "تبرّع",
|
||||||
"github": "الشفرة المصدرية",
|
"github": "الشفرة المصدرية",
|
||||||
|
"docs": "توثيق",
|
||||||
"privacy": "سياسة الخصوصية",
|
"privacy": "سياسة الخصوصية",
|
||||||
"service": "شروط الإستخدام"
|
"service": "شروط الإستخدام"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Линия за прекъсване на страницата",
|
"toggle-page-break-line": "Линия за прекъсване на страницата",
|
||||||
"toggle-sidebars": "Включване на страничната лента",
|
"toggle-sidebars": "Включване на страничната лента",
|
||||||
"zoom-in": "Увеличи",
|
"zoom-in": "Увеличи",
|
||||||
"zoom-out": "Намали"
|
"zoom-out": "Намали",
|
||||||
|
"undo": "Отмяна на",
|
||||||
|
"redo": "Redo"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Направи дарение и подкрепи Reactive Resume"
|
"heading": "Направи дарение и подкрепи Reactive Resume"
|
||||||
},
|
},
|
||||||
"github": "Програмен код",
|
"github": "Програмен код",
|
||||||
|
"docs": "Документация",
|
||||||
"heading": "Връзки"
|
"heading": "Връзки"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Настройки",
|
"heading": "Настройки",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Размер на хартията",
|
||||||
|
"secondary": "Определя размерите на вашите страници с автобиография"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Линия на прекъсване",
|
"primary": "Линия на прекъсване",
|
||||||
"secondary": "Показване на линия на всички страници за обозначаване на височината на страница A4"
|
"secondary": "Показване на линия на всички страници за обозначаване на височината на страница A4"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Дарение",
|
"donate": "Дарение",
|
||||||
"github": "Програмен код",
|
"github": "Програмен код",
|
||||||
|
"docs": "Документация",
|
||||||
"privacy": "Политика за поверителност",
|
"privacy": "Политика за поверителност",
|
||||||
"service": "Условия на ползване"
|
"service": "Условия на ползване"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "পৃষ্ঠা বিরতি লাইন টগল করুন",
|
"toggle-page-break-line": "পৃষ্ঠা বিরতি লাইন টগল করুন",
|
||||||
"toggle-sidebars": "সাইডবার টগল করুন",
|
"toggle-sidebars": "সাইডবার টগল করুন",
|
||||||
"zoom-in": "বড় কর",
|
"zoom-in": "বড় কর",
|
||||||
"zoom-out": "ছোট করা"
|
"zoom-out": "ছোট করা",
|
||||||
|
"undo": "পূর্বাবস্থায় ফেরান",
|
||||||
|
"redo": "আবার করুন"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Reactive Resume -তে দান করুন"
|
"heading": "Reactive Resume -তে দান করুন"
|
||||||
},
|
},
|
||||||
"github": "সোর্স কোড",
|
"github": "সোর্স কোড",
|
||||||
|
"docs": "ডকুমেন্টেশন",
|
||||||
"heading": "লিঙ্ক"
|
"heading": "লিঙ্ক"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "সেটিংস",
|
"heading": "সেটিংস",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "কাগজের আকার",
|
||||||
|
"secondary": "আপনার জীবনবৃত্তান্ত পৃষ্ঠাগুলির মাত্রা নির্ধারণ করে"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "লাইন ভেঙ্গে ফেলুন",
|
"primary": "লাইন ভেঙ্গে ফেলুন",
|
||||||
"secondary": "একটি A4 পৃষ্ঠার উচ্চতা চিহ্নিত করতে সমস্ত পৃষ্ঠায় একটি লাইন দেখান৷"
|
"secondary": "একটি A4 পৃষ্ঠার উচ্চতা চিহ্নিত করতে সমস্ত পৃষ্ঠায় একটি লাইন দেখান৷"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "দান করুন",
|
"donate": "দান করুন",
|
||||||
"github": "সোর্স কোড",
|
"github": "সোর্স কোড",
|
||||||
|
"docs": "ডকুমেন্টেশন",
|
||||||
"privacy": "গোপনীয়তা নীতি",
|
"privacy": "গোপনীয়তা নীতি",
|
||||||
"service": "সেবা পাবার শর্ত"
|
"service": "সেবা পাবার শর্ত"
|
||||||
}
|
}
|
||||||
|
|||||||
368
client/public/locales/ca/builder.json
Normal file
368
client/public/locales/ca/builder.json
Normal file
@ -0,0 +1,368 @@
|
|||||||
|
{
|
||||||
|
"common": {
|
||||||
|
"actions": {
|
||||||
|
"add": "Afegeix nou {{token}}",
|
||||||
|
"delete": "Suprimeix {{token}}",
|
||||||
|
"edit": "Edita {{token}}"
|
||||||
|
},
|
||||||
|
"columns": {
|
||||||
|
"heading": "Columnes",
|
||||||
|
"tooltip": "Canvia el nombre de columnes"
|
||||||
|
},
|
||||||
|
"form": {
|
||||||
|
"date": {
|
||||||
|
"label": "Data"
|
||||||
|
},
|
||||||
|
"description": {
|
||||||
|
"label": "Descripció"
|
||||||
|
},
|
||||||
|
"email": {
|
||||||
|
"label": "Correu electrònic"
|
||||||
|
},
|
||||||
|
"end-date": {
|
||||||
|
"help-text": "Deixeu aquest camp en blanc, si encara està present",
|
||||||
|
"label": "Data de finalització"
|
||||||
|
},
|
||||||
|
"keywords": {
|
||||||
|
"label": "Paraules clau"
|
||||||
|
},
|
||||||
|
"level": {
|
||||||
|
"label": "Nivell"
|
||||||
|
},
|
||||||
|
"levelNum": {
|
||||||
|
"label": "Nivell (nombre)"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "Nom"
|
||||||
|
},
|
||||||
|
"phone": {
|
||||||
|
"label": "Número de telèfon"
|
||||||
|
},
|
||||||
|
"position": {
|
||||||
|
"label": "Posició"
|
||||||
|
},
|
||||||
|
"start-date": {
|
||||||
|
"label": "Data d'inici"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"label": "Subtítol"
|
||||||
|
},
|
||||||
|
"summary": {
|
||||||
|
"label": "Resum"
|
||||||
|
},
|
||||||
|
"title": {
|
||||||
|
"label": "Títol"
|
||||||
|
},
|
||||||
|
"url": {
|
||||||
|
"label": "Pàgina web"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"glossary": {
|
||||||
|
"page": "Pàgina"
|
||||||
|
},
|
||||||
|
"list": {
|
||||||
|
"actions": {
|
||||||
|
"delete": "Elimina",
|
||||||
|
"duplicate": "Duplica",
|
||||||
|
"edit": "Edita"
|
||||||
|
},
|
||||||
|
"empty-text": "Aquesta llista està buida."
|
||||||
|
},
|
||||||
|
"tooltip": {
|
||||||
|
"delete-item": "Estàs segur que vols esborrar aquest element? Aquesta acció és irreversible.",
|
||||||
|
"delete-section": "Suprimeix una secció",
|
||||||
|
"rename-section": "Canvia el nom de la secció",
|
||||||
|
"toggle-visibility": "Commuta la visibilitat"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"controller": {
|
||||||
|
"tooltip": {
|
||||||
|
"center-artboard": "Centrar tauler de dibuix",
|
||||||
|
"copy-link": "Copia l'enllaç al currículum",
|
||||||
|
"export-pdf": "Exporta com a PDF",
|
||||||
|
"toggle-orientation": "Commuta l'orientació de la pàgina",
|
||||||
|
"toggle-page-break-line": "Commuta la línia de salt de pàgina",
|
||||||
|
"toggle-sidebars": "Mostra o oculta la barra lateral",
|
||||||
|
"zoom-in": "Amplia",
|
||||||
|
"zoom-out": "Allunya",
|
||||||
|
"undo": "Desfer",
|
||||||
|
"redo": "Refer"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"header": {
|
||||||
|
"menu": {
|
||||||
|
"delete": "Elimina",
|
||||||
|
"duplicate": "Duplica",
|
||||||
|
"rename": "Canvia el nom",
|
||||||
|
"share-link": "Comparteix l'enllaç",
|
||||||
|
"tooltips": {
|
||||||
|
"delete": "Estàs segur que vols esborrar aquest currículum? Aquesta acció és irreversible.",
|
||||||
|
"share-link": "Heu de canviar la visibilitat del vostre currículum a pública per fer-lo visible per als altres."
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"leftSidebar": {
|
||||||
|
"sections": {
|
||||||
|
"awards": {
|
||||||
|
"form": {
|
||||||
|
"awarder": {
|
||||||
|
"label": "Otorgat per"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"basics": {
|
||||||
|
"actions": {
|
||||||
|
"photo-filters": "Filtres fotogràfics"
|
||||||
|
},
|
||||||
|
"heading": "Bàsics",
|
||||||
|
"headline": {
|
||||||
|
"label": "Títol"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "Nom complet"
|
||||||
|
},
|
||||||
|
"birthdate": {
|
||||||
|
"label": "Data de naixement"
|
||||||
|
},
|
||||||
|
"photo-filters": {
|
||||||
|
"effects": {
|
||||||
|
"border": {
|
||||||
|
"label": "Vora"
|
||||||
|
},
|
||||||
|
"grayscale": {
|
||||||
|
"label": "Escala de grisos"
|
||||||
|
},
|
||||||
|
"heading": "Efectes"
|
||||||
|
},
|
||||||
|
"shape": {
|
||||||
|
"heading": "Forma"
|
||||||
|
},
|
||||||
|
"size": {
|
||||||
|
"heading": "Mida (en px)"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"photo-upload": {
|
||||||
|
"tooltip": {
|
||||||
|
"remove": "Esborrar foto",
|
||||||
|
"upload": "Pugeu la foto"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"certifications": {
|
||||||
|
"form": {
|
||||||
|
"issuer": {
|
||||||
|
"label": "Emissor"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"education": {
|
||||||
|
"form": {
|
||||||
|
"area-study": {
|
||||||
|
"label": "Àrea d'estudi"
|
||||||
|
},
|
||||||
|
"courses": {
|
||||||
|
"label": "Cursos"
|
||||||
|
},
|
||||||
|
"degree": {
|
||||||
|
"label": "Graus"
|
||||||
|
},
|
||||||
|
"grade": {
|
||||||
|
"label": "Qualificació"
|
||||||
|
},
|
||||||
|
"institution": {
|
||||||
|
"label": "Institució"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"location": {
|
||||||
|
"address": {
|
||||||
|
"label": "Adreça"
|
||||||
|
},
|
||||||
|
"city": {
|
||||||
|
"label": "Ciutat"
|
||||||
|
},
|
||||||
|
"country": {
|
||||||
|
"label": "País"
|
||||||
|
},
|
||||||
|
"heading": "Ubicació",
|
||||||
|
"postal-code": {
|
||||||
|
"label": "Codi Postal"
|
||||||
|
},
|
||||||
|
"region": {
|
||||||
|
"label": "Regió"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"profiles": {
|
||||||
|
"form": {
|
||||||
|
"network": {
|
||||||
|
"label": "Xarxa"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"label": "Nom d'usuari"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "Perfils",
|
||||||
|
"heading_one": "Perfil"
|
||||||
|
},
|
||||||
|
"publications": {
|
||||||
|
"form": {
|
||||||
|
"publisher": {
|
||||||
|
"label": "Editor"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"references": {
|
||||||
|
"form": {
|
||||||
|
"relationship": {
|
||||||
|
"label": "Relació"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"section": {
|
||||||
|
"heading": "Secció"
|
||||||
|
},
|
||||||
|
"volunteer": {
|
||||||
|
"form": {
|
||||||
|
"organization": {
|
||||||
|
"label": "Organització"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rightSidebar": {
|
||||||
|
"sections": {
|
||||||
|
"css": {
|
||||||
|
"heading": "CSS personalitzat"
|
||||||
|
},
|
||||||
|
"export": {
|
||||||
|
"heading": "Exporta",
|
||||||
|
"json": {
|
||||||
|
"primary": "JSON",
|
||||||
|
"secondary": "Baixeu una versió JSON del vostre currículum que es pot tornar a importar a Reactive Resume."
|
||||||
|
},
|
||||||
|
"pdf": {
|
||||||
|
"loading": {
|
||||||
|
"primary": "Generació de PDF",
|
||||||
|
"secondary": "Si us plau, espereu mentre es generi el vostre PDF; això pot trigar fins a 15 segons."
|
||||||
|
},
|
||||||
|
"normal": {
|
||||||
|
"primary": "PDF",
|
||||||
|
"secondary": "Descarrega un PDF del teu currículum que pots imprimir i enviar a la feina dels teus somnis. Aquest fitxer no es pot tornar a importar per editar-lo més."
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"layout": {
|
||||||
|
"heading": "Disseny",
|
||||||
|
"tooltip": {
|
||||||
|
"reset-layout": "Restableix el disseny"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"links": {
|
||||||
|
"bugs-features": {
|
||||||
|
"body": "Alguna cosa t'impedeix fer un currículum? O tens una idea sorprenent per afegir? Planteja un problema a GitHub per començar.",
|
||||||
|
"button": "Problemes de GitHub",
|
||||||
|
"heading": "Errors? Sol·licituds de funcions?"
|
||||||
|
},
|
||||||
|
"donate": {
|
||||||
|
"body": "Si us ha agradat utilitzar Reactive Resume, considereu donar tant com pugueu per mantenir l'aplicació en funcionament, sense anuncis i gratuïta per sempre.",
|
||||||
|
"button": "Compra'm un cafè",
|
||||||
|
"heading": "Dona a Reactive Curriculum vitae"
|
||||||
|
},
|
||||||
|
"github": "Codi font",
|
||||||
|
"docs": "Documentació",
|
||||||
|
"heading": "Enllaços"
|
||||||
|
},
|
||||||
|
"settings": {
|
||||||
|
"global": {
|
||||||
|
"date": {
|
||||||
|
"primary": "Data",
|
||||||
|
"secondary": "Format de data per utilitzar a l'aplicació"
|
||||||
|
},
|
||||||
|
"heading": "Global",
|
||||||
|
"language": {
|
||||||
|
"primary": "Llenguatge",
|
||||||
|
"secondary": "Mostra l'idioma per utilitzar a l'aplicació"
|
||||||
|
},
|
||||||
|
"theme": {
|
||||||
|
"primary": "Tema"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "Configuració",
|
||||||
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Mida del paper",
|
||||||
|
"secondary": "Determina les dimensions de les pàgines del vostre currículum"
|
||||||
|
},
|
||||||
|
"break-line": {
|
||||||
|
"primary": "Línia de trencament",
|
||||||
|
"secondary": "Mostra una línia a totes les pàgines per marcar l'alçada d'una pàgina A4"
|
||||||
|
},
|
||||||
|
"heading": "Pàgina",
|
||||||
|
"orientation": {
|
||||||
|
"disabled": "No té efecte quan només hi ha una pàgina",
|
||||||
|
"primary": "Orientació",
|
||||||
|
"secondary": "Si voleu mostrar les pàgines horitzontalment o verticalment"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"resume": {
|
||||||
|
"heading": "Resum",
|
||||||
|
"reset": {
|
||||||
|
"primary": "Restablir-ho tot",
|
||||||
|
"secondary": "S'ha equivocat massa? Feu clic aquí per restablir tots els canvis i començar des de zero. Aneu amb compte, aquesta acció no es pot revertir."
|
||||||
|
},
|
||||||
|
"sample": {
|
||||||
|
"primary": "Carregueu dades de mostra",
|
||||||
|
"secondary": "No saps per on començar? Feu clic aquí per carregar algunes dades de mostra per veure com es veu un currículum complet."
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"sharing": {
|
||||||
|
"heading": "Compartint",
|
||||||
|
"short-url": {
|
||||||
|
"label": "Prefereix URL curt"
|
||||||
|
},
|
||||||
|
"visibility": {
|
||||||
|
"subtitle": "Permet que qualsevol persona amb un enllaç vegi el teu currículum",
|
||||||
|
"title": "Públic"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"templates": {
|
||||||
|
"heading": "Plantilles"
|
||||||
|
},
|
||||||
|
"theme": {
|
||||||
|
"form": {
|
||||||
|
"background": {
|
||||||
|
"label": "Fons"
|
||||||
|
},
|
||||||
|
"primary": {
|
||||||
|
"label": "primària"
|
||||||
|
},
|
||||||
|
"text": {
|
||||||
|
"label": "Text"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "Tema"
|
||||||
|
},
|
||||||
|
"typography": {
|
||||||
|
"form": {
|
||||||
|
"font-family": {
|
||||||
|
"label": "Família de lletres"
|
||||||
|
},
|
||||||
|
"font-size": {
|
||||||
|
"label": "Mida de la font"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "Tipografia",
|
||||||
|
"widgets": {
|
||||||
|
"body": {
|
||||||
|
"label": "Cos"
|
||||||
|
},
|
||||||
|
"headings": {
|
||||||
|
"label": "Encapçalaments"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
29
client/public/locales/ca/common.json
Normal file
29
client/public/locales/ca/common.json
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"avatar": {
|
||||||
|
"menu": {
|
||||||
|
"greeting": "Hola",
|
||||||
|
"logout": "Tancar sessió"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"footer": {
|
||||||
|
"credit": "Un projecte de passió d'<1>Amruth Pillai</1>",
|
||||||
|
"license": "Per la comunitat, per a la comunitat."
|
||||||
|
},
|
||||||
|
"markdown": {
|
||||||
|
"help-text": "Aquesta secció admet <1>reducció</1> formatació."
|
||||||
|
},
|
||||||
|
"date": {
|
||||||
|
"present": "Present"
|
||||||
|
},
|
||||||
|
"subtitle": "Un creador de currículums gratuït i de codi obert.",
|
||||||
|
"title": "Currículum reactiu",
|
||||||
|
"toast": {
|
||||||
|
"error": {
|
||||||
|
"upload-file-size": "Pengeu només fitxers de menys de 2 megabytes.",
|
||||||
|
"upload-photo-size": "Pengeu només fotos de menys de 2 megabytes, preferiblement quadrades."
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"resume-link-copied": "S'ha copiat un enllaç al vostre currículum al porta-retalls."
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
25
client/public/locales/ca/dashboard.json
Normal file
25
client/public/locales/ca/dashboard.json
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"create-resume": {
|
||||||
|
"subtitle": "Començar de zero",
|
||||||
|
"title": "Crea un currículum nou"
|
||||||
|
},
|
||||||
|
"import-external": {
|
||||||
|
"subtitle": "LinkedIn, currículum JSON, currículum reactiu",
|
||||||
|
"title": "Importa des de fonts externes"
|
||||||
|
},
|
||||||
|
"resume": {
|
||||||
|
"menu": {
|
||||||
|
"delete": "Suprimeix",
|
||||||
|
"duplicate": "Duplicat",
|
||||||
|
"open": "Obert",
|
||||||
|
"rename": "Canvia el nom",
|
||||||
|
"share-link": "Compartir Enllaç",
|
||||||
|
"tooltips": {
|
||||||
|
"delete": "Esteu segur que voleu suprimir aquest currículum? Aquesta és una acció irreversible.",
|
||||||
|
"share-link": "Heu de canviar la visibilitat del vostre currículum a pública per fer-lo visible per als altres."
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"timestamp": "Última actualització fa {{timestamp}}"
|
||||||
|
},
|
||||||
|
"title": "panell"
|
||||||
|
}
|
||||||
42
client/public/locales/ca/landing.json
Normal file
42
client/public/locales/ca/landing.json
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
{
|
||||||
|
"actions": {
|
||||||
|
"app": "Vés a l'aplicació",
|
||||||
|
"login": "iniciar Sessió",
|
||||||
|
"logout": "Tancar sessió",
|
||||||
|
"register": "Registra't"
|
||||||
|
},
|
||||||
|
"features": {
|
||||||
|
"heading": "Característiques",
|
||||||
|
"list": {
|
||||||
|
"ads": "No hi ha publicitat",
|
||||||
|
"export": "Exporteu el vostre currículum a format JSON o PDF",
|
||||||
|
"free": "Lliure, per sempre",
|
||||||
|
"import": "Importeu dades de LinkedIn, Currículum JSON",
|
||||||
|
"languages": "Accessible en diversos idiomes",
|
||||||
|
"more": "I moltes més funcions interessants, <1>llegiu-ne tot aquí</1>",
|
||||||
|
"tracking": "Sense seguiment d'usuaris"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"links": {
|
||||||
|
"heading": "Enllaços",
|
||||||
|
"links": {
|
||||||
|
"donate": "Donar",
|
||||||
|
"github": "Codi font",
|
||||||
|
"docs": "Documentació",
|
||||||
|
"privacy": "Política de privacitat",
|
||||||
|
"service": "Termes del servei"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"screenshots": {
|
||||||
|
"heading": "Captures de pantalla"
|
||||||
|
},
|
||||||
|
"testimonials": {
|
||||||
|
"heading": "Testimonis",
|
||||||
|
"body": "Bo o dolent, m'encantaria saber la teva opinió sobre Reactive Curriculum vitae i com ha estat l'experiència per a tu.<br/>Aquests són alguns dels missatges enviats pels usuaris de tot el món.",
|
||||||
|
"contact": "Podeu posar-vos en contacte amb mi mitjançant <1>el meu correu electrònic</1> o mitjançant el formulari de contacte al <3>el meu lloc web</3> ."
|
||||||
|
},
|
||||||
|
"summary": {
|
||||||
|
"body": "Reactive Resume és un creador de currículums gratuït i de codi obert que s'ha creat per fer que les tasques mundanes de crear, actualitzar i compartir el vostre currículum siguin tan fàcils com 1, 2, 3. Amb aquesta aplicació, podeu crear diversos currículums, compartir-los amb reclutadors o amics. mitjançant un enllaç únic i imprimiu-lo com a PDF, tot de franc, sense anuncis, sense seguiment, sense perdre la integritat i la privadesa de les vostres dades.",
|
||||||
|
"heading": "Resum"
|
||||||
|
}
|
||||||
|
}
|
||||||
135
client/public/locales/ca/modals.json
Normal file
135
client/public/locales/ca/modals.json
Normal file
@ -0,0 +1,135 @@
|
|||||||
|
{
|
||||||
|
"auth": {
|
||||||
|
"forgot-password": {
|
||||||
|
"actions": {
|
||||||
|
"send-email": "Envieu un correu electrònic de restabliment de la contrasenya"
|
||||||
|
},
|
||||||
|
"body": "Només cal que introduïu l'adreça de correu electrònic associada al compte que voleu recuperar.",
|
||||||
|
"form": {
|
||||||
|
"email": {
|
||||||
|
"label": "Correu electrònic"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "Has oblidat la teva contrasenya?",
|
||||||
|
"help-text": "Si el compte existeix, rebràs un correu electrònic amb un enllaç per restablir la teva contrasenya."
|
||||||
|
},
|
||||||
|
"login": {
|
||||||
|
"actions": {
|
||||||
|
"login": "iniciar Sessió"
|
||||||
|
},
|
||||||
|
"body": "Introduïu el vostre nom d'usuari i contrasenya associats al vostre compte per iniciar sessió i accedir, gestionar i compartir els vostres currículums.",
|
||||||
|
"form": {
|
||||||
|
"password": {
|
||||||
|
"label": "Contrasenya"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"help-text": "També podeu introduir la vostra adreça de correu electrònic",
|
||||||
|
"label": "Nom d'usuari"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "Inicieu sessió al vostre compte",
|
||||||
|
"recover-text": "En cas que hagis oblidat la teva contrasenya, pots <1>recuperar el teu compte</1> aquí.",
|
||||||
|
"register-text": "Si no en teniu cap, podeu <1>crear un compte</1> aquí."
|
||||||
|
},
|
||||||
|
"register": {
|
||||||
|
"actions": {
|
||||||
|
"register": "Registra't",
|
||||||
|
"google": "Registra't a Google"
|
||||||
|
},
|
||||||
|
"body": "Introduïu la vostra informació personal per crear un compte.",
|
||||||
|
"form": {
|
||||||
|
"confirm-password": {
|
||||||
|
"label": "Confirma la contrassenya"
|
||||||
|
},
|
||||||
|
"email": {
|
||||||
|
"label": "Correu electrònic"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "Nom complet"
|
||||||
|
},
|
||||||
|
"password": {
|
||||||
|
"label": "Contrasenya"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"label": "Nom d'usuari"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "Crear un compte",
|
||||||
|
"loginText": "Si ja teniu un compte, podeu <1>iniciar sessió aquí</1> ."
|
||||||
|
},
|
||||||
|
"reset-password": {
|
||||||
|
"actions": {
|
||||||
|
"set-password": "Estableix una contrasenya nova"
|
||||||
|
},
|
||||||
|
"body": "Introduïu una contrasenya nova per al vostre compte.",
|
||||||
|
"form": {
|
||||||
|
"confirm-password": {
|
||||||
|
"label": "Confirma la contrassenya"
|
||||||
|
},
|
||||||
|
"password": {
|
||||||
|
"label": "Contrasenya"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "Restablir la contrasenya"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dashboard": {
|
||||||
|
"create-resume": {
|
||||||
|
"actions": {
|
||||||
|
"create-resume": "Crea un currículum"
|
||||||
|
},
|
||||||
|
"body": "Comenceu a crear el vostre currículum posant-li un nom. Pot ser en referència a la funció que esteu sol·licitant, o només al vostre berenar preferit.",
|
||||||
|
"form": {
|
||||||
|
"name": {
|
||||||
|
"label": "Nom"
|
||||||
|
},
|
||||||
|
"public": {
|
||||||
|
"label": "És accessible públicament?"
|
||||||
|
},
|
||||||
|
"slug": {
|
||||||
|
"label": "Llimac"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "Crea un currículum nou"
|
||||||
|
},
|
||||||
|
"import-external": {
|
||||||
|
"heading": "Importa des de fonts externes",
|
||||||
|
"json-resume": {
|
||||||
|
"actions": {
|
||||||
|
"upload-json": "Carregueu JSON"
|
||||||
|
},
|
||||||
|
"body": "Si teniu un currículum JSON <1>validat</1> a punt per començar, podeu utilitzar-lo per accelerar el vostre desenvolupament a Reactive Resume. Feu clic al botó següent i carregueu un fitxer JSON vàlid per començar.",
|
||||||
|
"heading": "Importa des del currículum JSON"
|
||||||
|
},
|
||||||
|
"linkedin": {
|
||||||
|
"actions": {
|
||||||
|
"upload-archive": "Carregueu l'arxiu ZIP"
|
||||||
|
},
|
||||||
|
"body": "Podeu estalviar temps exportant les vostres dades de LinkedIn i utilitzant-les per omplir automàticament els camps de Reactive Resume. Aneu a <1>Privadesa de dades</1> secció a LinkedIn i sol·liciteu un arxiu de les vostres dades. Un cop estigui disponible, carregueu el fitxer ZIP a continuació.",
|
||||||
|
"heading": "Importa des de LinkedIn"
|
||||||
|
},
|
||||||
|
"reactive-resume": {
|
||||||
|
"actions": {
|
||||||
|
"upload-json": "Carregueu JSON",
|
||||||
|
"upload-json-v2": "Carregueu JSON des de la v2"
|
||||||
|
},
|
||||||
|
"body": "Si teniu un JSON que s'ha exportat amb la versió actual de Reactive Resume, podeu tornar-lo a importar aquí per tornar a obtenir una versió editable.",
|
||||||
|
"heading": "Importa des del currículum reactiu"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rename-resume": {
|
||||||
|
"actions": {
|
||||||
|
"rename-resume": "Canvia el nom del currículum"
|
||||||
|
},
|
||||||
|
"form": {
|
||||||
|
"name": {
|
||||||
|
"label": "Nom"
|
||||||
|
},
|
||||||
|
"slug": {
|
||||||
|
"label": "Llimac"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "Canvieu el nom del vostre currículum"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Přepnout řádek zalomení stránky",
|
"toggle-page-break-line": "Přepnout řádek zalomení stránky",
|
||||||
"toggle-sidebars": "Přepnout boční panely",
|
"toggle-sidebars": "Přepnout boční panely",
|
||||||
"zoom-in": "Přiblížit",
|
"zoom-in": "Přiblížit",
|
||||||
"zoom-out": "Oddálit"
|
"zoom-out": "Oddálit",
|
||||||
|
"undo": "Zrušit",
|
||||||
|
"redo": "Přepracovat"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Přispějte na Reactive Resume"
|
"heading": "Přispějte na Reactive Resume"
|
||||||
},
|
},
|
||||||
"github": "Zdrojový kód",
|
"github": "Zdrojový kód",
|
||||||
|
"docs": "Dokumentace",
|
||||||
"heading": "Odkazy"
|
"heading": "Odkazy"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Nastavení",
|
"heading": "Nastavení",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Velikost papíru",
|
||||||
|
"secondary": "Určuje rozměry stránek vašeho životopisu"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Nový řádek",
|
"primary": "Nový řádek",
|
||||||
"secondary": "Zobrazit čáru na všech stránkách pro označení výšky stránky A4"
|
"secondary": "Zobrazit čáru na všech stránkách pro označení výšky stránky A4"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Darovat",
|
"donate": "Darovat",
|
||||||
"github": "Zdrojový kód",
|
"github": "Zdrojový kód",
|
||||||
|
"docs": "Dokumentace",
|
||||||
"privacy": "Zásady ochrany osobních údajů",
|
"privacy": "Zásady ochrany osobních údajů",
|
||||||
"service": "Podmínky služby"
|
"service": "Podmínky služby"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Skift sideskiftlinje",
|
"toggle-page-break-line": "Skift sideskiftlinje",
|
||||||
"toggle-sidebars": "Sidebjælke til/fra",
|
"toggle-sidebars": "Sidebjælke til/fra",
|
||||||
"zoom-in": "Zoom ind",
|
"zoom-in": "Zoom ind",
|
||||||
"zoom-out": "Zoom ud"
|
"zoom-out": "Zoom ud",
|
||||||
|
"undo": "Fortryd",
|
||||||
|
"redo": "Redo"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Donér til Reactive Resume"
|
"heading": "Donér til Reactive Resume"
|
||||||
},
|
},
|
||||||
"github": "Kildekode",
|
"github": "Kildekode",
|
||||||
|
"docs": "Dokumentation",
|
||||||
"heading": "Links"
|
"heading": "Links"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Indstillinger",
|
"heading": "Indstillinger",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Papirstørrelse",
|
||||||
|
"secondary": "Bestemmer dimensionerne på dine CV-sider"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Brudlinje",
|
"primary": "Brudlinje",
|
||||||
"secondary": "Vis en streg på alle sider for at markere højden på en A4-side"
|
"secondary": "Vis en streg på alle sider for at markere højden på en A4-side"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Donér",
|
"donate": "Donér",
|
||||||
"github": "Kildekode",
|
"github": "Kildekode",
|
||||||
|
"docs": "Dokumentation",
|
||||||
"privacy": "Fortrolighedspolitik",
|
"privacy": "Fortrolighedspolitik",
|
||||||
"service": "Servicevilkår"
|
"service": "Servicevilkår"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Pausenzeile umschalten",
|
"toggle-page-break-line": "Pausenzeile umschalten",
|
||||||
"toggle-sidebars": "Seitenleisten umschalten",
|
"toggle-sidebars": "Seitenleisten umschalten",
|
||||||
"zoom-in": "Vergrößern",
|
"zoom-in": "Vergrößern",
|
||||||
"zoom-out": "Verkleinern"
|
"zoom-out": "Verkleinern",
|
||||||
|
"undo": "Rückgängig machen",
|
||||||
|
"redo": "Redo"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Spenden an Reaktives Lebenslauf"
|
"heading": "Spenden an Reaktives Lebenslauf"
|
||||||
},
|
},
|
||||||
"github": "Quellcode",
|
"github": "Quellcode",
|
||||||
|
"docs": "Dokumentation",
|
||||||
"heading": "Links"
|
"heading": "Links"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Einstellungen",
|
"heading": "Einstellungen",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Papier größe",
|
||||||
|
"secondary": "Legt die Abmessungen Ihrer Lebenslaufseiten fest"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Linie anhalten",
|
"primary": "Linie anhalten",
|
||||||
"secondary": "Zeile auf allen Seiten anzeigen, um die Höhe einer A4-Seite zu markieren"
|
"secondary": "Zeile auf allen Seiten anzeigen, um die Höhe einer A4-Seite zu markieren"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Spenden",
|
"donate": "Spenden",
|
||||||
"github": "Quellcode",
|
"github": "Quellcode",
|
||||||
|
"docs": "Dokumentation",
|
||||||
"privacy": "Datenschutzerklärung",
|
"privacy": "Datenschutzerklärung",
|
||||||
"service": "Nutzungsbedingungen"
|
"service": "Nutzungsbedingungen"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Εναλλαγή γραμμής αλλαγής σελίδας",
|
"toggle-page-break-line": "Εναλλαγή γραμμής αλλαγής σελίδας",
|
||||||
"toggle-sidebars": "Εναλλαγή πλευρικών γραμμών",
|
"toggle-sidebars": "Εναλλαγή πλευρικών γραμμών",
|
||||||
"zoom-in": "Μεγέθυνση",
|
"zoom-in": "Μεγέθυνση",
|
||||||
"zoom-out": "Σμίκρυνση"
|
"zoom-out": "Σμίκρυνση",
|
||||||
|
"undo": "Αναίρεση",
|
||||||
|
"redo": "Redo"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Κάντε δωρεά στο Reactive βιογραφικό"
|
"heading": "Κάντε δωρεά στο Reactive βιογραφικό"
|
||||||
},
|
},
|
||||||
"github": "Πηγαίος κώδικας",
|
"github": "Πηγαίος κώδικας",
|
||||||
|
"docs": "Τεκμηρίωση",
|
||||||
"heading": "Σύνδεσμοι"
|
"heading": "Σύνδεσμοι"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Ρυθμίσεις",
|
"heading": "Ρυθμίσεις",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Μέγεθος χαρτιού",
|
||||||
|
"secondary": "Καθορίζει τις διαστάσεις των σελίδων του βιογραφικού σας"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Γραμμή διακοπής",
|
"primary": "Γραμμή διακοπής",
|
||||||
"secondary": "Εμφάνιση μιας γραμμής σε όλες τις σελίδες για να επισημάνετε το ύψος μιας σελίδας Α4"
|
"secondary": "Εμφάνιση μιας γραμμής σε όλες τις σελίδες για να επισημάνετε το ύψος μιας σελίδας Α4"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Δωρεά",
|
"donate": "Δωρεά",
|
||||||
"github": "Πηγαίος Κώδικας",
|
"github": "Πηγαίος Κώδικας",
|
||||||
|
"docs": "Τεκμηρίωση",
|
||||||
"privacy": "Πολιτική Απορρήτου",
|
"privacy": "Πολιτική Απορρήτου",
|
||||||
"service": "Όρους παροχής υπηρεσιών"
|
"service": "Όρους παροχής υπηρεσιών"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -270,6 +270,7 @@
|
|||||||
"heading": "Donate to Reactive Resume"
|
"heading": "Donate to Reactive Resume"
|
||||||
},
|
},
|
||||||
"github": "Source Code",
|
"github": "Source Code",
|
||||||
|
"docs": "Documentation",
|
||||||
"heading": "Links"
|
"heading": "Links"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -289,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Settings",
|
"heading": "Settings",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Paper Size",
|
||||||
|
"secondary": "Determines the dimensions of your resume pages"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Break Line",
|
"primary": "Break Line",
|
||||||
"secondary": "Show a line on all pages to mark the height of an A4 page"
|
"secondary": "Show a line on all pages to mark the height of an A4 page"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Donate",
|
"donate": "Donate",
|
||||||
"github": "Source Code",
|
"github": "Source Code",
|
||||||
|
"docs": "Documentation",
|
||||||
"privacy": "Privacy Policy",
|
"privacy": "Privacy Policy",
|
||||||
"service": "Terms of Service"
|
"service": "Terms of Service"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Alternar línea de salto de página",
|
"toggle-page-break-line": "Alternar línea de salto de página",
|
||||||
"toggle-sidebars": "Ocultar/mostrar barra lateral",
|
"toggle-sidebars": "Ocultar/mostrar barra lateral",
|
||||||
"zoom-in": "Acercar",
|
"zoom-in": "Acercar",
|
||||||
"zoom-out": "Alejar"
|
"zoom-out": "Alejar",
|
||||||
|
"undo": "Deshacer",
|
||||||
|
"redo": "Rehacer"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Donar a Reactive Resume"
|
"heading": "Donar a Reactive Resume"
|
||||||
},
|
},
|
||||||
"github": "Código Fuente",
|
"github": "Código Fuente",
|
||||||
|
"docs": "Documentación",
|
||||||
"heading": "Enlaces"
|
"heading": "Enlaces"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Preferencias",
|
"heading": "Preferencias",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Tamaño de papel",
|
||||||
|
"secondary": "Determina las dimensiones de las páginas de tu currículum."
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Linea de separación",
|
"primary": "Linea de separación",
|
||||||
"secondary": "Mostrar una línea en todas las páginas para marcar la altura de una página A4"
|
"secondary": "Mostrar una línea en todas las páginas para marcar la altura de una página A4"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Donar",
|
"donate": "Donar",
|
||||||
"github": "Código fuente",
|
"github": "Código fuente",
|
||||||
|
"docs": "Documentación",
|
||||||
"privacy": "Política de Privacidad",
|
"privacy": "Política de Privacidad",
|
||||||
"service": "Términos de Servicio"
|
"service": "Términos de Servicio"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "تغییر وضعیت خط شکست صفحه",
|
"toggle-page-break-line": "تغییر وضعیت خط شکست صفحه",
|
||||||
"toggle-sidebars": "باز/بسته کردن نوار کنار صفحه",
|
"toggle-sidebars": "باز/بسته کردن نوار کنار صفحه",
|
||||||
"zoom-in": "بزرگنمایی",
|
"zoom-in": "بزرگنمایی",
|
||||||
"zoom-out": "کوچکنمایی"
|
"zoom-out": "کوچکنمایی",
|
||||||
|
"undo": "واگرد",
|
||||||
|
"redo": "دوباره انجام دهید"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "کمک مالی به Reactive Resume"
|
"heading": "کمک مالی به Reactive Resume"
|
||||||
},
|
},
|
||||||
"github": "کد منبع",
|
"github": "کد منبع",
|
||||||
|
"docs": "مستندات",
|
||||||
"heading": "لینکها"
|
"heading": "لینکها"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "تنظیمات",
|
"heading": "تنظیمات",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "اندازه کاغذ",
|
||||||
|
"secondary": "ابعاد صفحات رزومه شما را تعیین می کند"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "خط شکست",
|
"primary": "خط شکست",
|
||||||
"secondary": "برای مشخص کردن ارتفاع صفحه A4 یک خط در همه صفحات نشان داده شود"
|
"secondary": "برای مشخص کردن ارتفاع صفحه A4 یک خط در همه صفحات نشان داده شود"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "حمایت مالی",
|
"donate": "حمایت مالی",
|
||||||
"github": "کد منبع",
|
"github": "کد منبع",
|
||||||
|
"docs": "مستندات",
|
||||||
"privacy": "حریم خصوصی",
|
"privacy": "حریم خصوصی",
|
||||||
"service": "شرایط سرویسدهی"
|
"service": "شرایط سرویسدهی"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Vaihda sivunvaihtoviivaa",
|
"toggle-page-break-line": "Vaihda sivunvaihtoviivaa",
|
||||||
"toggle-sidebars": "Vaihda Sivupalkkeja",
|
"toggle-sidebars": "Vaihda Sivupalkkeja",
|
||||||
"zoom-in": "Suurenna",
|
"zoom-in": "Suurenna",
|
||||||
"zoom-out": "Pienennä"
|
"zoom-out": "Pienennä",
|
||||||
|
"undo": "Kumoa",
|
||||||
|
"redo": "Redo"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Lahjoita Reaktiiviselle ansioluettelolle"
|
"heading": "Lahjoita Reaktiiviselle ansioluettelolle"
|
||||||
},
|
},
|
||||||
"github": "Lähdekoodi",
|
"github": "Lähdekoodi",
|
||||||
|
"docs": "Dokumentaatio",
|
||||||
"heading": "Linkit"
|
"heading": "Linkit"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Asetukset",
|
"heading": "Asetukset",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Paperikoko",
|
||||||
|
"secondary": "Määrittää ansioluettelosi sivujen mitat"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Katkoviiva",
|
"primary": "Katkoviiva",
|
||||||
"secondary": "Näytä viiva kaikilla sivuilla A4-sivun korkeuden merkitsemiseksi"
|
"secondary": "Näytä viiva kaikilla sivuilla A4-sivun korkeuden merkitsemiseksi"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Lahjoita",
|
"donate": "Lahjoita",
|
||||||
"github": "Lähdekoodi",
|
"github": "Lähdekoodi",
|
||||||
|
"docs": "Dokumentaatio",
|
||||||
"privacy": "Tietosuojakäytäntö",
|
"privacy": "Tietosuojakäytäntö",
|
||||||
"service": "Käyttöehdot"
|
"service": "Käyttöehdot"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Afficher/cacher l'indicateur de saut de page",
|
"toggle-page-break-line": "Afficher/cacher l'indicateur de saut de page",
|
||||||
"toggle-sidebars": "Afficher/cacher les barres latérales",
|
"toggle-sidebars": "Afficher/cacher les barres latérales",
|
||||||
"zoom-in": "Zoomer",
|
"zoom-in": "Zoomer",
|
||||||
"zoom-out": "Dézoomer"
|
"zoom-out": "Dézoomer",
|
||||||
|
"undo": "Défaire",
|
||||||
|
"redo": "Refaire"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Faire un don à Reactive Resume"
|
"heading": "Faire un don à Reactive Resume"
|
||||||
},
|
},
|
||||||
"github": "Code source",
|
"github": "Code source",
|
||||||
|
"docs": "Documentation",
|
||||||
"heading": "Liens"
|
"heading": "Liens"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Paramètres",
|
"heading": "Paramètres",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Taille de papier",
|
||||||
|
"secondary": "Détermine les dimensions de vos pages de CV"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Indicateur de changement de page",
|
"primary": "Indicateur de changement de page",
|
||||||
"secondary": "Afficher une ligne sur toutes les pages pour marquer la hauteur d'une feuille A4"
|
"secondary": "Afficher une ligne sur toutes les pages pour marquer la hauteur d'une feuille A4"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Faire un don",
|
"donate": "Faire un don",
|
||||||
"github": "Code source",
|
"github": "Code source",
|
||||||
|
"docs": "Documentation",
|
||||||
"privacy": "Politique de confidentialité",
|
"privacy": "Politique de confidentialité",
|
||||||
"service": "Conditions d'utilisation"
|
"service": "Conditions d'utilisation"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "החלף את קו מעבר עמוד",
|
"toggle-page-break-line": "החלף את קו מעבר עמוד",
|
||||||
"toggle-sidebars": "החלף את סרגלי הצד",
|
"toggle-sidebars": "החלף את סרגלי הצד",
|
||||||
"zoom-in": "הגדל",
|
"zoom-in": "הגדל",
|
||||||
"zoom-out": "הקטן"
|
"zoom-out": "הקטן",
|
||||||
|
"undo": "לבטל",
|
||||||
|
"redo": "לַעֲשׂוֹת שׁוּב"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "תרומה לקורות חיים ריאקטיביים"
|
"heading": "תרומה לקורות חיים ריאקטיביים"
|
||||||
},
|
},
|
||||||
"github": "קוד מקור",
|
"github": "קוד מקור",
|
||||||
|
"docs": "תיעוד",
|
||||||
"heading": "קישורים"
|
"heading": "קישורים"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "הגדרות",
|
"heading": "הגדרות",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "גודל נייר",
|
||||||
|
"secondary": "קובע את הממדים של דפי קורות החיים שלך"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "קו עצירה",
|
"primary": "קו עצירה",
|
||||||
"secondary": "הצג קו בכל הדפים כדי לסמן את גובהו של דף A4"
|
"secondary": "הצג קו בכל הדפים כדי לסמן את גובהו של דף A4"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "לִתְרוֹם",
|
"donate": "לִתְרוֹם",
|
||||||
"github": "קוד מקור",
|
"github": "קוד מקור",
|
||||||
|
"docs": "תיעוד",
|
||||||
"privacy": "מדיניות פרטיות",
|
"privacy": "מדיניות פרטיות",
|
||||||
"service": "תנאי השירות"
|
"service": "תנאי השירות"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "टॉगल पेज ब्रेक लाइन",
|
"toggle-page-break-line": "टॉगल पेज ब्रेक लाइन",
|
||||||
"toggle-sidebars": "साइडबार टॉगल करें",
|
"toggle-sidebars": "साइडबार टॉगल करें",
|
||||||
"zoom-in": "ज़ूम इन",
|
"zoom-in": "ज़ूम इन",
|
||||||
"zoom-out": "ज़ूम आउट"
|
"zoom-out": "ज़ूम आउट",
|
||||||
|
"undo": "पूर्ववत",
|
||||||
|
"redo": "फिर से करें"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "प्रतिक्रियाशील फिर से शुरू करने के लिए दान करें"
|
"heading": "प्रतिक्रियाशील फिर से शुरू करने के लिए दान करें"
|
||||||
},
|
},
|
||||||
"github": "सोर्स कोड",
|
"github": "सोर्स कोड",
|
||||||
|
"docs": "प्रलेखन",
|
||||||
"heading": "लिंक"
|
"heading": "लिंक"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "समायोजन",
|
"heading": "समायोजन",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "काग़ज़ का आकार",
|
||||||
|
"secondary": "आपके रेज़्यूमे पृष्ठों के आयाम निर्धारित करता है"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "अंतराल वाली लकीर",
|
"primary": "अंतराल वाली लकीर",
|
||||||
"secondary": "A4 पृष्ठ की ऊंचाई को चिह्नित करने के लिए सभी पृष्ठों पर एक पंक्ति दिखाएं"
|
"secondary": "A4 पृष्ठ की ऊंचाई को चिह्नित करने के लिए सभी पृष्ठों पर एक पंक्ति दिखाएं"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "दान करना",
|
"donate": "दान करना",
|
||||||
"github": "सोर्स कोड",
|
"github": "सोर्स कोड",
|
||||||
|
"docs": "प्रलेखन",
|
||||||
"privacy": "गोपनीयता नीति",
|
"privacy": "गोपनीयता नीति",
|
||||||
"service": "सेवा की शर्तें"
|
"service": "सेवा की शर्तें"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Oldaltörés vonal váltása",
|
"toggle-page-break-line": "Oldaltörés vonal váltása",
|
||||||
"toggle-sidebars": "Az oldalsávok váltása",
|
"toggle-sidebars": "Az oldalsávok váltása",
|
||||||
"zoom-in": "Nagyítás",
|
"zoom-in": "Nagyítás",
|
||||||
"zoom-out": "Kicsinyítés"
|
"zoom-out": "Kicsinyítés",
|
||||||
|
"undo": "Undo",
|
||||||
|
"redo": "Redo"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Adományozzon a Reactive Resume-nak"
|
"heading": "Adományozzon a Reactive Resume-nak"
|
||||||
},
|
},
|
||||||
"github": "Forráskód",
|
"github": "Forráskód",
|
||||||
|
"docs": "Dokumentáció",
|
||||||
"heading": "Linkek"
|
"heading": "Linkek"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Beállítások",
|
"heading": "Beállítások",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Papírméret",
|
||||||
|
"secondary": "Meghatározza az önéletrajzi oldalak méreteit"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Törésvonal",
|
"primary": "Törésvonal",
|
||||||
"secondary": "Mutasson egy vonalat az összes oldalon, hogy megjelölje egy A4-es oldal magasságát"
|
"secondary": "Mutasson egy vonalat az összes oldalon, hogy megjelölje egy A4-es oldal magasságát"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Adományoz",
|
"donate": "Adományoz",
|
||||||
"github": "Forráskód",
|
"github": "Forráskód",
|
||||||
|
"docs": "Dokumentáció",
|
||||||
"privacy": "Adatvédelmi irányelvek",
|
"privacy": "Adatvédelmi irányelvek",
|
||||||
"service": "Szolgáltatási feltételek"
|
"service": "Szolgáltatási feltételek"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Beralih Garis Pemisah Halaman",
|
"toggle-page-break-line": "Beralih Garis Pemisah Halaman",
|
||||||
"toggle-sidebars": "Beralih Sidebar",
|
"toggle-sidebars": "Beralih Sidebar",
|
||||||
"zoom-in": "Perbesar",
|
"zoom-in": "Perbesar",
|
||||||
"zoom-out": "Perkecil"
|
"zoom-out": "Perkecil",
|
||||||
|
"undo": "Batalkan",
|
||||||
|
"redo": "Ulangi"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Donasi ke Reactive Resume"
|
"heading": "Donasi ke Reactive Resume"
|
||||||
},
|
},
|
||||||
"github": "Kode sumber",
|
"github": "Kode sumber",
|
||||||
|
"docs": "Dokumentasi",
|
||||||
"heading": "Link"
|
"heading": "Link"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Pengaturan",
|
"heading": "Pengaturan",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Ukuran kertas",
|
||||||
|
"secondary": "Menentukan dimensi halaman resume Anda"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Break Line",
|
"primary": "Break Line",
|
||||||
"secondary": "Tampilkan garis di semua halaman untuk menandai ketinggian halaman A4"
|
"secondary": "Tampilkan garis di semua halaman untuk menandai ketinggian halaman A4"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Donasi",
|
"donate": "Donasi",
|
||||||
"github": "Kode Sumber",
|
"github": "Kode Sumber",
|
||||||
|
"docs": "Dokumentasi",
|
||||||
"privacy": "Kebijakan Pribadi",
|
"privacy": "Kebijakan Pribadi",
|
||||||
"service": "Persyaratan Layanan"
|
"service": "Persyaratan Layanan"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -84,7 +84,9 @@
|
|||||||
"toggle-page-break-line": "Mostra/Nascondi linea interruzione pagina",
|
"toggle-page-break-line": "Mostra/Nascondi linea interruzione pagina",
|
||||||
"toggle-sidebars": "Mostra/Nascondi barre laterali",
|
"toggle-sidebars": "Mostra/Nascondi barre laterali",
|
||||||
"zoom-in": "Ingrandisci",
|
"zoom-in": "Ingrandisci",
|
||||||
"zoom-out": "Riduci"
|
"zoom-out": "Riduci",
|
||||||
|
"undo": "Annulla",
|
||||||
|
"redo": "Rifare"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"header": {
|
"header": {
|
||||||
@ -268,6 +270,7 @@
|
|||||||
"heading": "Dona a Reactive Resume"
|
"heading": "Dona a Reactive Resume"
|
||||||
},
|
},
|
||||||
"github": "Codice sorgente",
|
"github": "Codice sorgente",
|
||||||
|
"docs": "Documentazione",
|
||||||
"heading": "Link"
|
"heading": "Link"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -287,6 +290,10 @@
|
|||||||
},
|
},
|
||||||
"heading": "Impostazioni",
|
"heading": "Impostazioni",
|
||||||
"page": {
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "Dimensioni del foglio",
|
||||||
|
"secondary": "Determina le dimensioni delle pagine del tuo curriculum"
|
||||||
|
},
|
||||||
"break-line": {
|
"break-line": {
|
||||||
"primary": "Linea di interruzione",
|
"primary": "Linea di interruzione",
|
||||||
"secondary": "Mostra su tutte le pagine una linea che indica l'altezza di un foglio A4"
|
"secondary": "Mostra su tutte le pagine una linea che indica l'altezza di un foglio A4"
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
"links": {
|
"links": {
|
||||||
"donate": "Dona",
|
"donate": "Dona",
|
||||||
"github": "Codice sorgente",
|
"github": "Codice sorgente",
|
||||||
|
"docs": "Documentazione",
|
||||||
"privacy": "Informativa sulla privacy",
|
"privacy": "Informativa sulla privacy",
|
||||||
"service": "Condizioni d'uso"
|
"service": "Condizioni d'uso"
|
||||||
}
|
}
|
||||||
|
|||||||
368
client/public/locales/ja/builder.json
Normal file
368
client/public/locales/ja/builder.json
Normal file
@ -0,0 +1,368 @@
|
|||||||
|
{
|
||||||
|
"common": {
|
||||||
|
"actions": {
|
||||||
|
"add": "新規追加 {{token}}",
|
||||||
|
"delete": "削除 {{token}}",
|
||||||
|
"edit": "編集 {{token}}."
|
||||||
|
},
|
||||||
|
"columns": {
|
||||||
|
"heading": "列",
|
||||||
|
"tooltip": "列数の変更"
|
||||||
|
},
|
||||||
|
"form": {
|
||||||
|
"date": {
|
||||||
|
"label": "日付"
|
||||||
|
},
|
||||||
|
"description": {
|
||||||
|
"label": "概要"
|
||||||
|
},
|
||||||
|
"email": {
|
||||||
|
"label": "メールアドレス"
|
||||||
|
},
|
||||||
|
"end-date": {
|
||||||
|
"help-text": "まだ存在する場合、このフィールドを空白のままにします。",
|
||||||
|
"label": "終了日"
|
||||||
|
},
|
||||||
|
"keywords": {
|
||||||
|
"label": "キーワード"
|
||||||
|
},
|
||||||
|
"level": {
|
||||||
|
"label": "レベル"
|
||||||
|
},
|
||||||
|
"levelNum": {
|
||||||
|
"label": "レベル(数値)"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "氏名"
|
||||||
|
},
|
||||||
|
"phone": {
|
||||||
|
"label": "電話番号"
|
||||||
|
},
|
||||||
|
"position": {
|
||||||
|
"label": "役職"
|
||||||
|
},
|
||||||
|
"start-date": {
|
||||||
|
"label": "開始日"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"label": "サブタイトル"
|
||||||
|
},
|
||||||
|
"summary": {
|
||||||
|
"label": "要約"
|
||||||
|
},
|
||||||
|
"title": {
|
||||||
|
"label": "タイトル"
|
||||||
|
},
|
||||||
|
"url": {
|
||||||
|
"label": "Webサイト"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"glossary": {
|
||||||
|
"page": "ページ"
|
||||||
|
},
|
||||||
|
"list": {
|
||||||
|
"actions": {
|
||||||
|
"delete": "削除",
|
||||||
|
"duplicate": "複製",
|
||||||
|
"edit": "編集"
|
||||||
|
},
|
||||||
|
"empty-text": "このリストは空です。"
|
||||||
|
},
|
||||||
|
"tooltip": {
|
||||||
|
"delete-item": "本当にこの項目を削除しますか?これは元に戻すことができない操作です。",
|
||||||
|
"delete-section": "セクションを削除する",
|
||||||
|
"rename-section": "セクションの名前を変更する",
|
||||||
|
"toggle-visibility": "トグル・ビジビリティ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"controller": {
|
||||||
|
"tooltip": {
|
||||||
|
"center-artboard": "センターアートボード",
|
||||||
|
"copy-link": "レジュメへのリンクをコピー",
|
||||||
|
"export-pdf": "PDF形式でエクスポート",
|
||||||
|
"toggle-orientation": "ページの向きを切り替える",
|
||||||
|
"toggle-page-break-line": "改ページ線のトグル",
|
||||||
|
"toggle-sidebars": "トグル・サイドバー",
|
||||||
|
"zoom-in": "ズームイン",
|
||||||
|
"zoom-out": "ズームアウト",
|
||||||
|
"undo": "アンドゥ",
|
||||||
|
"redo": "やり直し"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"header": {
|
||||||
|
"menu": {
|
||||||
|
"delete": "削除",
|
||||||
|
"duplicate": "デュプリケート",
|
||||||
|
"rename": "リネーム",
|
||||||
|
"share-link": "シェアリンク",
|
||||||
|
"tooltips": {
|
||||||
|
"delete": "本当にこのレジュメを削除しますか?これは不可逆的なアクションです。",
|
||||||
|
"share-link": "レジュメを他の人に見てもらうためには、レジュメの表示方法を公開に変更する必要があります。"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"leftSidebar": {
|
||||||
|
"sections": {
|
||||||
|
"awards": {
|
||||||
|
"form": {
|
||||||
|
"awarder": {
|
||||||
|
"label": "賞罰"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"basics": {
|
||||||
|
"actions": {
|
||||||
|
"photo-filters": "フォトフィルター"
|
||||||
|
},
|
||||||
|
"heading": "基本事項",
|
||||||
|
"headline": {
|
||||||
|
"label": "ヘッドライン"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "フルネーム"
|
||||||
|
},
|
||||||
|
"birthdate": {
|
||||||
|
"label": "生年月日"
|
||||||
|
},
|
||||||
|
"photo-filters": {
|
||||||
|
"effects": {
|
||||||
|
"border": {
|
||||||
|
"label": "ボーダー"
|
||||||
|
},
|
||||||
|
"grayscale": {
|
||||||
|
"label": "グレースケール"
|
||||||
|
},
|
||||||
|
"heading": "効果"
|
||||||
|
},
|
||||||
|
"shape": {
|
||||||
|
"heading": "形状"
|
||||||
|
},
|
||||||
|
"size": {
|
||||||
|
"heading": "サイズ(単位:px)"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"photo-upload": {
|
||||||
|
"tooltip": {
|
||||||
|
"remove": "写真を削除する",
|
||||||
|
"upload": "写真のアップロード"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"certifications": {
|
||||||
|
"form": {
|
||||||
|
"issuer": {
|
||||||
|
"label": "発行者"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"education": {
|
||||||
|
"form": {
|
||||||
|
"area-study": {
|
||||||
|
"label": "専攻分野"
|
||||||
|
},
|
||||||
|
"courses": {
|
||||||
|
"label": "コース紹介"
|
||||||
|
},
|
||||||
|
"degree": {
|
||||||
|
"label": "学位"
|
||||||
|
},
|
||||||
|
"grade": {
|
||||||
|
"label": "グレード"
|
||||||
|
},
|
||||||
|
"institution": {
|
||||||
|
"label": "インスティテューション"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"location": {
|
||||||
|
"address": {
|
||||||
|
"label": "住所"
|
||||||
|
},
|
||||||
|
"city": {
|
||||||
|
"label": "市区町村"
|
||||||
|
},
|
||||||
|
"country": {
|
||||||
|
"label": "国"
|
||||||
|
},
|
||||||
|
"heading": "所在地",
|
||||||
|
"postal-code": {
|
||||||
|
"label": "郵便番号"
|
||||||
|
},
|
||||||
|
"region": {
|
||||||
|
"label": "地域"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"profiles": {
|
||||||
|
"form": {
|
||||||
|
"network": {
|
||||||
|
"label": "ネットワーク"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"label": "ユーザー名"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "プロフィール",
|
||||||
|
"heading_one": "プロフィール"
|
||||||
|
},
|
||||||
|
"publications": {
|
||||||
|
"form": {
|
||||||
|
"publisher": {
|
||||||
|
"label": "出版社"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"references": {
|
||||||
|
"form": {
|
||||||
|
"relationship": {
|
||||||
|
"label": "関係"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"section": {
|
||||||
|
"heading": "セクション"
|
||||||
|
},
|
||||||
|
"volunteer": {
|
||||||
|
"form": {
|
||||||
|
"organization": {
|
||||||
|
"label": "組織"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rightSidebar": {
|
||||||
|
"sections": {
|
||||||
|
"css": {
|
||||||
|
"heading": "カスタムCSS"
|
||||||
|
},
|
||||||
|
"export": {
|
||||||
|
"heading": "エクスポート",
|
||||||
|
"json": {
|
||||||
|
"primary": "JSON",
|
||||||
|
"secondary": "履歴書のJSONバージョンをダウンロードし、Reactive Resumeにインポートすることができます。"
|
||||||
|
},
|
||||||
|
"pdf": {
|
||||||
|
"loading": {
|
||||||
|
"primary": "PDF を生成中",
|
||||||
|
"secondary": "PDFが生成されるまで、15秒程度かかる場合があります。"
|
||||||
|
},
|
||||||
|
"normal": {
|
||||||
|
"primary": "PDF",
|
||||||
|
"secondary": "履歴書のPDFをダウンロードして印刷し、憧れの職場に送りましょう。このファイルは、再度インポートして編集することはできません。"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"layout": {
|
||||||
|
"heading": "レイアウト",
|
||||||
|
"tooltip": {
|
||||||
|
"reset-layout": "リセットレイアウト"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"links": {
|
||||||
|
"bugs-features": {
|
||||||
|
"body": "レジュメを作るのを邪魔しているものがありますか?または、追加したい素晴らしいアイディアがありますか?GitHub で課題を出してください。",
|
||||||
|
"button": "GitHubの課題",
|
||||||
|
"heading": "バグ?機能要望?"
|
||||||
|
},
|
||||||
|
"donate": {
|
||||||
|
"body": "もしReactive Resumeを気に入って使っていただけたなら、このアプリを広告なしで、いつまでも無料で使い続けるために、できる限りの寄付をご検討ください。",
|
||||||
|
"button": "コーヒーを買ってきて",
|
||||||
|
"heading": "リアクティブ・レジュメに寄付をする"
|
||||||
|
},
|
||||||
|
"github": "ソースコード",
|
||||||
|
"docs": "ドキュメンテーション",
|
||||||
|
"heading": "リンク集"
|
||||||
|
},
|
||||||
|
"settings": {
|
||||||
|
"global": {
|
||||||
|
"date": {
|
||||||
|
"primary": "日付",
|
||||||
|
"secondary": "アプリ全体で使用する日付フォーマット"
|
||||||
|
},
|
||||||
|
"heading": "グローバル",
|
||||||
|
"language": {
|
||||||
|
"primary": "言語",
|
||||||
|
"secondary": "アプリ全体で使用する表示言語"
|
||||||
|
},
|
||||||
|
"theme": {
|
||||||
|
"primary": "テーマ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "設定",
|
||||||
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "用紙サイズ",
|
||||||
|
"secondary": "履歴書ページのサイズを決定します"
|
||||||
|
},
|
||||||
|
"break-line": {
|
||||||
|
"primary": "ブレイクライン",
|
||||||
|
"secondary": "A4ページの高さを示す線を全ページに表示する。"
|
||||||
|
},
|
||||||
|
"heading": "ページ",
|
||||||
|
"orientation": {
|
||||||
|
"disabled": "ページが1つしかない場合は効果がありません",
|
||||||
|
"primary": "オリエンテーション",
|
||||||
|
"secondary": "ページを水平に表示するか垂直に表示するか"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"resume": {
|
||||||
|
"heading": "レジュメ",
|
||||||
|
"reset": {
|
||||||
|
"primary": "すべてをリセットする",
|
||||||
|
"secondary": "間違いが多いですか?ここをクリックすると、すべての変更がリセットされ、最初からやり直すことができます。この操作は元に戻せませんのでご注意ください。"
|
||||||
|
},
|
||||||
|
"sample": {
|
||||||
|
"primary": "サンプルデータの読み込み",
|
||||||
|
"secondary": "どこから始めればいいのかわからない?ここをクリックしてサンプルデータをロードし、完全な履歴書がどのように見えるかを確認してください。"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"sharing": {
|
||||||
|
"heading": "シェアリング",
|
||||||
|
"short-url": {
|
||||||
|
"label": "短いURLを希望"
|
||||||
|
},
|
||||||
|
"visibility": {
|
||||||
|
"subtitle": "リンクで誰でもレジュメを閲覧できるようにする",
|
||||||
|
"title": "公共"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"templates": {
|
||||||
|
"heading": "テンプレート"
|
||||||
|
},
|
||||||
|
"theme": {
|
||||||
|
"form": {
|
||||||
|
"background": {
|
||||||
|
"label": "背景"
|
||||||
|
},
|
||||||
|
"primary": {
|
||||||
|
"label": "プライマリー"
|
||||||
|
},
|
||||||
|
"text": {
|
||||||
|
"label": "テキスト"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "テーマ"
|
||||||
|
},
|
||||||
|
"typography": {
|
||||||
|
"form": {
|
||||||
|
"font-family": {
|
||||||
|
"label": "フォントファミリー"
|
||||||
|
},
|
||||||
|
"font-size": {
|
||||||
|
"label": "文字サイズ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "タイポグラフィ",
|
||||||
|
"widgets": {
|
||||||
|
"body": {
|
||||||
|
"label": "本体"
|
||||||
|
},
|
||||||
|
"headings": {
|
||||||
|
"label": "見出し"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
29
client/public/locales/ja/common.json
Normal file
29
client/public/locales/ja/common.json
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"avatar": {
|
||||||
|
"menu": {
|
||||||
|
"greeting": "こんにちは",
|
||||||
|
"logout": "ログアウト"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"footer": {
|
||||||
|
"credit": "<1>アムルース・ピライの</1>情熱のプロジェクト",
|
||||||
|
"license": "コミュニティによる、コミュニティのための。"
|
||||||
|
},
|
||||||
|
"markdown": {
|
||||||
|
"help-text": "<1>マークダウンフォーマットに</1>対応しています。"
|
||||||
|
},
|
||||||
|
"date": {
|
||||||
|
"present": "現在"
|
||||||
|
},
|
||||||
|
"subtitle": "フリーでオープンソースの履歴書作成ツール。",
|
||||||
|
"title": "リアクティブ・レジュメ",
|
||||||
|
"toast": {
|
||||||
|
"error": {
|
||||||
|
"upload-file-size": "2メガバイト以下のファイルのみアップロードしてください。",
|
||||||
|
"upload-photo-size": "アップロードする写真は2メガバイト以下、正方形が望ましいです。"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"resume-link-copied": "あなたの履歴書へのリンクがクリップボードにコピーされました。"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
25
client/public/locales/ja/dashboard.json
Normal file
25
client/public/locales/ja/dashboard.json
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"create-resume": {
|
||||||
|
"subtitle": "ゼロからのスタート",
|
||||||
|
"title": "新しいレジュメの作成"
|
||||||
|
},
|
||||||
|
"import-external": {
|
||||||
|
"subtitle": "LinkedIn、JSON Resume、Reactive Resume",
|
||||||
|
"title": "外部からの取り込み"
|
||||||
|
},
|
||||||
|
"resume": {
|
||||||
|
"menu": {
|
||||||
|
"delete": "削除",
|
||||||
|
"duplicate": "複製",
|
||||||
|
"open": "開く",
|
||||||
|
"rename": "名前を変更",
|
||||||
|
"share-link": "リンクを共有",
|
||||||
|
"tooltips": {
|
||||||
|
"delete": "本当にこのレジュメを削除しますか?これは不可逆的な行為です。",
|
||||||
|
"share-link": "レジュメを他の人に見てもらうためには、レジュメの表示方法を公開に変更する必要があります。"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"timestamp": "最終更新 {{timestamp}} 前"
|
||||||
|
},
|
||||||
|
"title": "ダッシュボード"
|
||||||
|
}
|
||||||
42
client/public/locales/ja/landing.json
Normal file
42
client/public/locales/ja/landing.json
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
{
|
||||||
|
"actions": {
|
||||||
|
"app": "アプリに移動する",
|
||||||
|
"login": "ログイン",
|
||||||
|
"logout": "ログアウト",
|
||||||
|
"register": "登録"
|
||||||
|
},
|
||||||
|
"features": {
|
||||||
|
"heading": "特徴",
|
||||||
|
"list": {
|
||||||
|
"ads": "広告なし",
|
||||||
|
"export": "履歴書をJSONまたはPDF形式で書き出し",
|
||||||
|
"free": "無料、永久",
|
||||||
|
"import": "LinkedInからのデータインポート、JSON履歴書",
|
||||||
|
"languages": "多言語でアクセス可能",
|
||||||
|
"more": "さらに多くのエキサイティングな機能については、<1>こちらを</1>ご覧ください。",
|
||||||
|
"tracking": "ユーザートラッキングなし"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"links": {
|
||||||
|
"heading": "リンク集",
|
||||||
|
"links": {
|
||||||
|
"donate": "寄付",
|
||||||
|
"github": "ソースコード",
|
||||||
|
"docs": "ドキュメンテーション",
|
||||||
|
"privacy": "プライバシーポリシー",
|
||||||
|
"service": "利用規約"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"screenshots": {
|
||||||
|
"heading": "スクリーンショット"
|
||||||
|
},
|
||||||
|
"testimonials": {
|
||||||
|
"heading": "お客様の声",
|
||||||
|
"body": "良いことも悪いことも、Reactive Resumeを使用してみてどうだったか、あなたのご意見をお聞かせください。<br/>世界中のユーザーから寄せられたメッセージの一部をご紹介します。",
|
||||||
|
"contact": "<1>私のメールや</1> <3>ホームページの</3>お問い合わせフォームからご連絡ください。"
|
||||||
|
},
|
||||||
|
"summary": {
|
||||||
|
"body": "リアクティブ・レジュメは、履歴書の作成、更新、共有というありふれた作業を1、2、3のように簡単にするために作られた、無料かつオープンソースの履歴書作成ツールです。このアプリを使えば、複数の履歴書を作成し、ユニークなリンクを通じて採用担当者や友人と共有し、PDFとして印刷することができます。すべて無料、広告なし、トラッキングなし、データの整合性とプライバシーを失うことなく、履歴書を作成できます。",
|
||||||
|
"heading": "要約"
|
||||||
|
}
|
||||||
|
}
|
||||||
135
client/public/locales/ja/modals.json
Normal file
135
client/public/locales/ja/modals.json
Normal file
@ -0,0 +1,135 @@
|
|||||||
|
{
|
||||||
|
"auth": {
|
||||||
|
"forgot-password": {
|
||||||
|
"actions": {
|
||||||
|
"send-email": "パスワードリセットメールを送信する"
|
||||||
|
},
|
||||||
|
"body": "復元したいアカウントに関連付けられているメールアドレスを入力してください",
|
||||||
|
"form": {
|
||||||
|
"email": {
|
||||||
|
"label": "メールアドレス"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "パスワードを忘れましたか?",
|
||||||
|
"help-text": "アカウントが存在する場合、パスワードをリセットするためのリンクが記載されたメールが送信されます。"
|
||||||
|
},
|
||||||
|
"login": {
|
||||||
|
"actions": {
|
||||||
|
"login": "ログイン"
|
||||||
|
},
|
||||||
|
"body": "アカウントに関連付けられたユーザー名とパスワードを入力してログインし、レジュメにアクセス、管理、共有することができます。",
|
||||||
|
"form": {
|
||||||
|
"password": {
|
||||||
|
"label": "パスワード"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"help-text": "また、メールアドレスを入力することもできます",
|
||||||
|
"label": "ユーザー名"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "ログイン",
|
||||||
|
"recover-text": "パスワードをお忘れの場合は、こちらで<1>復旧</1>できます。",
|
||||||
|
"register-text": "お持ちでない方は、こちらから<1>アカウントを作成して</1>ください。"
|
||||||
|
},
|
||||||
|
"register": {
|
||||||
|
"actions": {
|
||||||
|
"register": "登録",
|
||||||
|
"google": "Googleアカウントで登録"
|
||||||
|
},
|
||||||
|
"body": "個人情報を入力し、アカウントを作成してください。",
|
||||||
|
"form": {
|
||||||
|
"confirm-password": {
|
||||||
|
"label": "パスワードの確認"
|
||||||
|
},
|
||||||
|
"email": {
|
||||||
|
"label": "メールアドレス"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "フルネーム"
|
||||||
|
},
|
||||||
|
"password": {
|
||||||
|
"label": "パスワード"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"label": "ユーザー名"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "アカウントを作成",
|
||||||
|
"loginText": "すでにアカウントをお持ちの方は、<1>こちらからログイン</1>できます。"
|
||||||
|
},
|
||||||
|
"reset-password": {
|
||||||
|
"actions": {
|
||||||
|
"set-password": "新しいパスワードの設定"
|
||||||
|
},
|
||||||
|
"body": "アカウントの新しいパスワードを入力します。",
|
||||||
|
"form": {
|
||||||
|
"confirm-password": {
|
||||||
|
"label": "パスワードの確認"
|
||||||
|
},
|
||||||
|
"password": {
|
||||||
|
"label": "パスワード"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "パスワードのリセット"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dashboard": {
|
||||||
|
"create-resume": {
|
||||||
|
"actions": {
|
||||||
|
"create-resume": "履歴書の作成"
|
||||||
|
},
|
||||||
|
"body": "履歴書の作成は、名前をつけることから始めましょう。応募している職務にちなんだものでも、好きなお菓子にちなんだものでもよいでしょう。",
|
||||||
|
"form": {
|
||||||
|
"name": {
|
||||||
|
"label": "名称"
|
||||||
|
},
|
||||||
|
"public": {
|
||||||
|
"label": "一般に公開されているか?"
|
||||||
|
},
|
||||||
|
"slug": {
|
||||||
|
"label": "スラッグ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "新しいレジュメを作成する"
|
||||||
|
},
|
||||||
|
"import-external": {
|
||||||
|
"heading": "外部からの取り込み",
|
||||||
|
"json-resume": {
|
||||||
|
"actions": {
|
||||||
|
"upload-json": "JSONのアップロード"
|
||||||
|
},
|
||||||
|
"body": "<1>検証済みのJSON Resumeが</1>あれば、それを使ってReactive Resumeでの開発を迅速に進めることができます。下のボタンをクリックし、有効なJSONファイルをアップロードして開始してください。",
|
||||||
|
"heading": "JSON履歴書からのインポート"
|
||||||
|
},
|
||||||
|
"linkedin": {
|
||||||
|
"actions": {
|
||||||
|
"upload-archive": "ZIPアーカイブのアップロード"
|
||||||
|
},
|
||||||
|
"body": "LinkedInからデータをエクスポートして、Reactive Resumeのフィールドの自動入力に使用すると、時間を節約することができます。LinkedInの<1>データプライバシーセクションに</1>移動して、データのアーカイブをリクエストしてください。アーカイブが利用可能になったら、以下のZIPファイルをアップロードしてください。",
|
||||||
|
"heading": "LinkedInからインポートする"
|
||||||
|
},
|
||||||
|
"reactive-resume": {
|
||||||
|
"actions": {
|
||||||
|
"upload-json": "JSONのアップロード",
|
||||||
|
"upload-json-v2": "v2からのJSONのアップロード"
|
||||||
|
},
|
||||||
|
"body": "もし、現在のバージョンのReactive ResumeでエクスポートされたJSONがあれば、ここにインポートして、再び編集可能なバージョンを入手することができます。",
|
||||||
|
"heading": "リアクティブレジュームからのインポート"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rename-resume": {
|
||||||
|
"actions": {
|
||||||
|
"rename-resume": "リネーム・レジューム"
|
||||||
|
},
|
||||||
|
"form": {
|
||||||
|
"name": {
|
||||||
|
"label": "名称"
|
||||||
|
},
|
||||||
|
"slug": {
|
||||||
|
"label": "スラッグ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "履歴書の名前を変更する"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
368
client/public/locales/km/builder.json
Normal file
368
client/public/locales/km/builder.json
Normal file
@ -0,0 +1,368 @@
|
|||||||
|
{
|
||||||
|
"common": {
|
||||||
|
"actions": {
|
||||||
|
"add": "បន្ថែមថ្មី {{token}}",
|
||||||
|
"delete": "លុប {{token}}",
|
||||||
|
"edit": "កែសម្រួល {{token}}"
|
||||||
|
},
|
||||||
|
"columns": {
|
||||||
|
"heading": "ជួរឈរ",
|
||||||
|
"tooltip": "ផ្លាស់ប្តូរចំនួនជួរឈរ"
|
||||||
|
},
|
||||||
|
"form": {
|
||||||
|
"date": {
|
||||||
|
"label": "កាលបរិច្ឆេទ"
|
||||||
|
},
|
||||||
|
"description": {
|
||||||
|
"label": "ការពិពណ៌នា"
|
||||||
|
},
|
||||||
|
"email": {
|
||||||
|
"label": "អាស័យដ្ឋានអ៊ីម៉េល"
|
||||||
|
},
|
||||||
|
"end-date": {
|
||||||
|
"help-text": "មិនចាំបាច់បំពេញ ប្រសិនបើនៅធ្វើការ",
|
||||||
|
"label": "ថ្ងៃឈប់"
|
||||||
|
},
|
||||||
|
"keywords": {
|
||||||
|
"label": "ពាក្យគន្លឹះ"
|
||||||
|
},
|
||||||
|
"level": {
|
||||||
|
"label": "កម្រិត"
|
||||||
|
},
|
||||||
|
"levelNum": {
|
||||||
|
"label": "កម្រិត (ជាលេខ)"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "ឈ្មោះ"
|
||||||
|
},
|
||||||
|
"phone": {
|
||||||
|
"label": "លេខទូរស័ព្ទ"
|
||||||
|
},
|
||||||
|
"position": {
|
||||||
|
"label": "តំណែង/មុខងារ"
|
||||||
|
},
|
||||||
|
"start-date": {
|
||||||
|
"label": "ថ្ងៃចាប់ផ្តើម"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"label": "ចំណងជើងតូច"
|
||||||
|
},
|
||||||
|
"summary": {
|
||||||
|
"label": "សង្ខេប"
|
||||||
|
},
|
||||||
|
"title": {
|
||||||
|
"label": "ចំណងជើង"
|
||||||
|
},
|
||||||
|
"url": {
|
||||||
|
"label": "គេហទំព័រ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"glossary": {
|
||||||
|
"page": "ទំព័រ"
|
||||||
|
},
|
||||||
|
"list": {
|
||||||
|
"actions": {
|
||||||
|
"delete": "លុប",
|
||||||
|
"duplicate": "ស្ទួន",
|
||||||
|
"edit": "កែសម្រួល"
|
||||||
|
},
|
||||||
|
"empty-text": "បញ្ជីនេះគឺទទេ។"
|
||||||
|
},
|
||||||
|
"tooltip": {
|
||||||
|
"delete-item": "តើអ្នកប្រាកដទេដែលចង់លុបវាចេញ? បញ្ជាក់ៈ ក្រោយពីលុបហើយ មិនអាចទាញយកមកវិញបានទេ។",
|
||||||
|
"delete-section": "ផ្នែកត្រូវលុប",
|
||||||
|
"rename-section": "ផ្នែកត្រូវប្តូរឈ្មោះ",
|
||||||
|
"toggle-visibility": "ឃើញ/មិនឃើញ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"controller": {
|
||||||
|
"tooltip": {
|
||||||
|
"center-artboard": "ផ្ទាំងឧបករណ៍ (កណ្តាល)",
|
||||||
|
"copy-link": "ចម្លងតំណទៅកាន់ប្រវត្តិរូប",
|
||||||
|
"export-pdf": "រក្សារទុកជា PDF",
|
||||||
|
"toggle-orientation": "បិទបើកការតំរង់ទិសទំព័រ",
|
||||||
|
"toggle-page-break-line": "បិទ/បើក បន្ទាត់បំបែកទំព័រ",
|
||||||
|
"toggle-sidebars": "បិទ/បើករបារចំហៀង",
|
||||||
|
"zoom-in": "ពង្រីក",
|
||||||
|
"zoom-out": "បង្រួម",
|
||||||
|
"undo": "មិនធ្វើវិញ",
|
||||||
|
"redo": "ធ្វើឡើងវិញ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"header": {
|
||||||
|
"menu": {
|
||||||
|
"delete": "លុប",
|
||||||
|
"duplicate": "ស្ទួន",
|
||||||
|
"rename": "ប្តូរឈ្មោះ",
|
||||||
|
"share-link": "ចែករំលែកតំណ",
|
||||||
|
"tooltips": {
|
||||||
|
"delete": "តើអ្នកប្រាកដថាចង់លុបប្រវត្តិរូបនេះទេ? នេះជាសកម្មភាពដែលមិនអាចត្រឡប់វិញបាន។",
|
||||||
|
"share-link": "អ្នកត្រូវផ្លាស់ប្តូរការមើលឃើញនៃប្រវត្តិរូបរបស់អ្នកជាសាធារណៈ ដើម្បីឱ្យអ្នកដទៃមើលឃើញ។"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"leftSidebar": {
|
||||||
|
"sections": {
|
||||||
|
"awards": {
|
||||||
|
"form": {
|
||||||
|
"awarder": {
|
||||||
|
"label": "អ្នកផ្តល់រង្វាន់"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"basics": {
|
||||||
|
"actions": {
|
||||||
|
"photo-filters": "តម្រងរូបថត"
|
||||||
|
},
|
||||||
|
"heading": "មូលដ្ឋាន",
|
||||||
|
"headline": {
|
||||||
|
"label": "ចំណងជើង"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"label": "ឈ្មោះពេញ"
|
||||||
|
},
|
||||||
|
"birthdate": {
|
||||||
|
"label": "ថ្ងៃខែឆ្នាំកំណើត"
|
||||||
|
},
|
||||||
|
"photo-filters": {
|
||||||
|
"effects": {
|
||||||
|
"border": {
|
||||||
|
"label": "ព្រំដែន"
|
||||||
|
},
|
||||||
|
"grayscale": {
|
||||||
|
"label": "មាត្រដ្ឋានប្រផេះ"
|
||||||
|
},
|
||||||
|
"heading": "ផលប៉ះពាល់"
|
||||||
|
},
|
||||||
|
"shape": {
|
||||||
|
"heading": "រាង"
|
||||||
|
},
|
||||||
|
"size": {
|
||||||
|
"heading": "ទំហំ (គិតជាភីកសែល)"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"photo-upload": {
|
||||||
|
"tooltip": {
|
||||||
|
"remove": "លុបរូបថត",
|
||||||
|
"upload": "បង្ហោះរូបថត"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"certifications": {
|
||||||
|
"form": {
|
||||||
|
"issuer": {
|
||||||
|
"label": "អ្នកចេញ"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"education": {
|
||||||
|
"form": {
|
||||||
|
"area-study": {
|
||||||
|
"label": "តំបន់សិក្សា"
|
||||||
|
},
|
||||||
|
"courses": {
|
||||||
|
"label": "វគ្គសិក្សា"
|
||||||
|
},
|
||||||
|
"degree": {
|
||||||
|
"label": "សញ្ញាបត្រ"
|
||||||
|
},
|
||||||
|
"grade": {
|
||||||
|
"label": "ថ្នាក់"
|
||||||
|
},
|
||||||
|
"institution": {
|
||||||
|
"label": "ស្ថាប័ន"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"location": {
|
||||||
|
"address": {
|
||||||
|
"label": "អាស័យដ្ឋាន"
|
||||||
|
},
|
||||||
|
"city": {
|
||||||
|
"label": "ទីក្រុង"
|
||||||
|
},
|
||||||
|
"country": {
|
||||||
|
"label": "ប្រទេស"
|
||||||
|
},
|
||||||
|
"heading": "ទីតាំង",
|
||||||
|
"postal-code": {
|
||||||
|
"label": "លេខកូដប្រៃសណីយ"
|
||||||
|
},
|
||||||
|
"region": {
|
||||||
|
"label": "តំបន់"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"profiles": {
|
||||||
|
"form": {
|
||||||
|
"network": {
|
||||||
|
"label": "បណ្តាញ"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"label": "ឈ្មោះអ្នកប្រើប្រាស់"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "ប្រវត្តិរូប",
|
||||||
|
"heading_one": "ប្រវត្តិរូប"
|
||||||
|
},
|
||||||
|
"publications": {
|
||||||
|
"form": {
|
||||||
|
"publisher": {
|
||||||
|
"label": "អ្នកបោះពុម្ពផ្សាយ"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"references": {
|
||||||
|
"form": {
|
||||||
|
"relationship": {
|
||||||
|
"label": "ទំនាក់ទំនង"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"section": {
|
||||||
|
"heading": "ផ្នែក"
|
||||||
|
},
|
||||||
|
"volunteer": {
|
||||||
|
"form": {
|
||||||
|
"organization": {
|
||||||
|
"label": "អង្គការ"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rightSidebar": {
|
||||||
|
"sections": {
|
||||||
|
"css": {
|
||||||
|
"heading": "CSS ផ្ទាល់ខ្លួន"
|
||||||
|
},
|
||||||
|
"export": {
|
||||||
|
"heading": "នាំចេញ",
|
||||||
|
"json": {
|
||||||
|
"primary": "JSON",
|
||||||
|
"secondary": "ទាញយកកំណែ JSON នៃប្រវត្តិរូបសង្ខេបរបស់អ្នក ដែលអាចត្រូវបាននាំចូលត្រឡប់ទៅក្នុង Reactive Resume វិញ។"
|
||||||
|
},
|
||||||
|
"pdf": {
|
||||||
|
"loading": {
|
||||||
|
"primary": "ការបង្កើត PDF",
|
||||||
|
"secondary": "សូមរង់ចាំនៅពេលដែល PDF របស់អ្នកត្រូវបានបង្កើត វាអាចចំណាយពេលរហូតដល់ 15 វិនាទី។"
|
||||||
|
},
|
||||||
|
"normal": {
|
||||||
|
"primary": "PDF",
|
||||||
|
"secondary": "ទាញយកឯកសារ PDF នៃប្រវត្តិរូបសង្ខេបរបស់អ្នក ដែលអ្នកអាចបោះពុម្ព និងផ្ញើទៅកាន់ការងារក្នុងក្តីស្រមៃរបស់អ្នក។ ឯកសារនេះមិនអាចត្រូវបាននាំចូលមកវិញសម្រាប់ការកែសម្រួលបន្ថែមទៀតទេ។"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"layout": {
|
||||||
|
"heading": "ប្លង់",
|
||||||
|
"tooltip": {
|
||||||
|
"reset-layout": "កំណត់ប្លង់ឡើងវិញ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"links": {
|
||||||
|
"bugs-features": {
|
||||||
|
"body": "មានអ្វីមួយរារាំងអ្នកមិនឱ្យបង្កើតប្រវត្តិរូប? ឬតើអ្នកមានគំនិតអស្ចារ្យដើម្បីបន្ថែមទេ? លើកបញ្ហានៅលើ GitHub ដើម្បីចាប់ផ្តើម។",
|
||||||
|
"button": "បញ្ហា GitHub",
|
||||||
|
"heading": "កំហុស? សំណើលក្ខណៈពិសេស?"
|
||||||
|
},
|
||||||
|
"donate": {
|
||||||
|
"body": "ប្រសិនបើអ្នកចូលចិត្តប្រើ Reactive Resume សូមពិចារណាបរិច្ចាគឱ្យបានច្រើនតាមដែលអ្នកអាចធ្វើបាន ដើម្បីបុព្វហេតុធ្វើឱ្យកម្មវិធីដំណើរការ និងដំណើរការដោយគ្មានការផ្សាយពាណិជ្ជកម្ម និងឥតគិតថ្លៃជារៀងរហូត។",
|
||||||
|
"button": "ទិញកាហ្វេឱ្យខ្ញុំ",
|
||||||
|
"heading": "បរិច្ចាគទៅប្រវត្តិរូបសង្ខេបដែលមានប្រតិកម្ម"
|
||||||
|
},
|
||||||
|
"github": "ប្រភពកូដ",
|
||||||
|
"docs": "ឯកសារ",
|
||||||
|
"heading": "តំណភ្ជាប់"
|
||||||
|
},
|
||||||
|
"settings": {
|
||||||
|
"global": {
|
||||||
|
"date": {
|
||||||
|
"primary": "កាលបរិច្ឆេទ",
|
||||||
|
"secondary": "ទម្រង់កាលបរិច្ឆេទដែលត្រូវប្រើនៅលើកម្មវិធី"
|
||||||
|
},
|
||||||
|
"heading": "សកល",
|
||||||
|
"language": {
|
||||||
|
"primary": "ភាសា",
|
||||||
|
"secondary": "បង្ហាញភាសាដែលត្រូវប្រើនៅលើកម្មវិធី"
|
||||||
|
},
|
||||||
|
"theme": {
|
||||||
|
"primary": "ប្រធានបទ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "ការកំណត់",
|
||||||
|
"page": {
|
||||||
|
"format": {
|
||||||
|
"primary": "ទំហំក្រដាស",
|
||||||
|
"secondary": "កំណត់វិមាត្រនៃទំព័រប្រវត្តិរូបរបស់អ្នក។"
|
||||||
|
},
|
||||||
|
"break-line": {
|
||||||
|
"primary": "បំបែកបន្ទាត់",
|
||||||
|
"secondary": "បង្ហាញបន្ទាត់នៅលើទំព័រទាំងអស់ដើម្បីសម្គាល់កម្ពស់នៃទំព័រ A4"
|
||||||
|
},
|
||||||
|
"heading": "ទំព័រ",
|
||||||
|
"orientation": {
|
||||||
|
"disabled": "មិនមានប្រសិទ្ធភាពទេពេលមានតែមួយទំព័រ",
|
||||||
|
"primary": "ការតំរង់ទិស",
|
||||||
|
"secondary": "ថាតើត្រូវបង្ហាញទំព័រផ្ដេក ឬបញ្ឈរ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"resume": {
|
||||||
|
"heading": "ប្រវត្តិរូប",
|
||||||
|
"reset": {
|
||||||
|
"primary": "កំណត់អ្វីៗគ្រប់យ៉ាងឡើងវិញ",
|
||||||
|
"secondary": "ធ្វើខុសច្រើនពេក? សូមចុចទីនេះដើម្បីកំណត់ការផ្លាស់ប្តូរទាំងអស់ឡើងវិញ ហើយចាប់ផ្តើមពីដំបូង។ សូមប្រយ័ត្ន សកម្មភាពនេះមិនអាចត្រឡប់វិញបានទេ។"
|
||||||
|
},
|
||||||
|
"sample": {
|
||||||
|
"primary": "ផ្ទុកទិន្នន័យគំរូ",
|
||||||
|
"secondary": "មិនប្រាកដថាត្រូវចាប់ផ្តើមពីណា? ចុចទីនេះដើម្បីផ្ទុកទិន្នន័យគំរូមួយចំនួន ដើម្បីមើលពីរបៀបដែលប្រវត្តិរូបសង្ខេបពេញលេញ។"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"sharing": {
|
||||||
|
"heading": "ការចែករំលែក",
|
||||||
|
"short-url": {
|
||||||
|
"label": "ចូលចិត្ត URL ខ្លី"
|
||||||
|
},
|
||||||
|
"visibility": {
|
||||||
|
"subtitle": "អនុញ្ញាតឱ្យនរណាម្នាក់ដែលមានតំណមើលប្រវត្តិរូបសង្ខេបរបស់អ្នក។",
|
||||||
|
"title": "សាធារណៈ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"templates": {
|
||||||
|
"heading": "គំរូ"
|
||||||
|
},
|
||||||
|
"theme": {
|
||||||
|
"form": {
|
||||||
|
"background": {
|
||||||
|
"label": "ផ្ទៃខាងក្រោយ"
|
||||||
|
},
|
||||||
|
"primary": {
|
||||||
|
"label": "បឋមសិក្សា"
|
||||||
|
},
|
||||||
|
"text": {
|
||||||
|
"label": "អត្ថបទ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "ប្រធានបទ"
|
||||||
|
},
|
||||||
|
"typography": {
|
||||||
|
"form": {
|
||||||
|
"font-family": {
|
||||||
|
"label": "គ្រួសារពុម្ពអក្សរ"
|
||||||
|
},
|
||||||
|
"font-size": {
|
||||||
|
"label": "ទំហំអក្សរ"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"heading": "វាយអក្សរ",
|
||||||
|
"widgets": {
|
||||||
|
"body": {
|
||||||
|
"label": "រាងកាយ"
|
||||||
|
},
|
||||||
|
"headings": {
|
||||||
|
"label": "ក្បាល"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -15,7 +15,7 @@
|
|||||||
"date": {
|
"date": {
|
||||||
"present": "បច្ចុប្បន្ន"
|
"present": "បច្ចុប្បន្ន"
|
||||||
},
|
},
|
||||||
"subtitle": "បង្កើតជីវត្តប្រវត្តិដោយចំហ និងមិនគិតថ្លៃ។",
|
"subtitle": "បង្កើតជីវប្រវត្តិដោយចំហ និងមិនគិតថ្លៃ។",
|
||||||
"title": "Reactive Resume",
|
"title": "Reactive Resume",
|
||||||
"toast": {
|
"toast": {
|
||||||
"error": {
|
"error": {
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user