Conflit resolved

This commit is contained in:
MarguoNana 2019-11-12 21:10:58 +01:00
commit 8b728d172f
24 changed files with 711 additions and 432 deletions

View File

@ -24,4 +24,7 @@ Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protrac
## Further help ## Further help
Before using ng for the first time in this project, use `npm i` to install needed npm modules.
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).

View File

@ -30,7 +30,11 @@
"styles": [ "styles": [
"src/styles.scss" "src/styles.scss"
], ],
"scripts": [] "scripts": [
"node_modules/marked/lib/marked.js",
"node_modules/prismjs/prism.js",
"node_modules/prismjs/components/prism-css.min.js"
]
}, },
"configurations": { "configurations": {
"production": { "production": {

198
package-lock.json generated
View File

@ -1,6 +1,6 @@
{ {
"name": "framadate", "name": "framadate-funky-frontend",
"version": "0.0.0", "version": "0.1.0",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {
@ -328,8 +328,7 @@
"ansi-regex": { "ansi-regex": {
"version": "2.1.1", "version": "2.1.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"aproba": { "aproba": {
"version": "1.2.0", "version": "1.2.0",
@ -350,14 +349,12 @@
"balanced-match": { "balanced-match": {
"version": "1.0.0", "version": "1.0.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"brace-expansion": { "brace-expansion": {
"version": "1.1.11", "version": "1.1.11",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"balanced-match": "^1.0.0", "balanced-match": "^1.0.0",
"concat-map": "0.0.1" "concat-map": "0.0.1"
@ -372,20 +369,17 @@
"code-point-at": { "code-point-at": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"concat-map": { "concat-map": {
"version": "0.0.1", "version": "0.0.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"console-control-strings": { "console-control-strings": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"core-util-is": { "core-util-is": {
"version": "1.0.2", "version": "1.0.2",
@ -502,8 +496,7 @@
"inherits": { "inherits": {
"version": "2.0.3", "version": "2.0.3",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"ini": { "ini": {
"version": "1.3.5", "version": "1.3.5",
@ -515,7 +508,6 @@
"version": "1.0.0", "version": "1.0.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"number-is-nan": "^1.0.0" "number-is-nan": "^1.0.0"
} }
@ -530,7 +522,6 @@
"version": "3.0.4", "version": "3.0.4",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"brace-expansion": "^1.1.7" "brace-expansion": "^1.1.7"
} }
@ -538,14 +529,12 @@
"minimist": { "minimist": {
"version": "0.0.8", "version": "0.0.8",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"minipass": { "minipass": {
"version": "2.3.5", "version": "2.3.5",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"safe-buffer": "^5.1.2", "safe-buffer": "^5.1.2",
"yallist": "^3.0.0" "yallist": "^3.0.0"
@ -564,7 +553,6 @@
"version": "0.5.1", "version": "0.5.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"minimist": "0.0.8" "minimist": "0.0.8"
} }
@ -645,8 +633,7 @@
"number-is-nan": { "number-is-nan": {
"version": "1.0.1", "version": "1.0.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"object-assign": { "object-assign": {
"version": "4.1.1", "version": "4.1.1",
@ -658,7 +645,6 @@
"version": "1.4.0", "version": "1.4.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"wrappy": "1" "wrappy": "1"
} }
@ -744,8 +730,7 @@
"safe-buffer": { "safe-buffer": {
"version": "5.1.2", "version": "5.1.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"safer-buffer": { "safer-buffer": {
"version": "2.1.2", "version": "2.1.2",
@ -781,7 +766,6 @@
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"code-point-at": "^1.0.0", "code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0", "is-fullwidth-code-point": "^1.0.0",
@ -801,7 +785,6 @@
"version": "3.0.1", "version": "3.0.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"ansi-regex": "^2.0.0" "ansi-regex": "^2.0.0"
} }
@ -845,14 +828,12 @@
"wrappy": { "wrappy": {
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"yallist": { "yallist": {
"version": "3.0.3", "version": "3.0.3",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
} }
} }
}, },
@ -1192,6 +1173,22 @@
"webpack-sources": "1.3.0" "webpack-sources": "1.3.0"
} }
}, },
"@ngx-translate/core": {
"version": "11.0.1",
"resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-11.0.1.tgz",
"integrity": "sha512-nBCa1ZD9fAUY/3eskP3Lql2fNg8OMrYIej1/5GRsfcutx9tG/5fZLCv9m6UCw1aS+u4uK/vXjv1ctG/FdMvaWg==",
"requires": {
"tslib": "^1.9.0"
}
},
"@ngx-translate/http-loader": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/@ngx-translate/http-loader/-/http-loader-4.0.0.tgz",
"integrity": "sha512-x8LumqydWD7eX9yQTAVeoCM9gFUIGVTUjZqbxdAUavAA3qVnk9wCQux7iHLPXpydl8vyQmLoPQR+fFU+DUDOMA==",
"requires": {
"tslib": "^1.9.0"
}
},
"@schematics/angular": { "@schematics/angular": {
"version": "8.2.1", "version": "8.2.1",
"resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-8.2.1.tgz", "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-8.2.1.tgz",
@ -1250,6 +1247,11 @@
"@types/jasmine": "*" "@types/jasmine": "*"
} }
}, },
"@types/marked": {
"version": "0.6.5",
"resolved": "https://registry.npmjs.org/@types/marked/-/marked-0.6.5.tgz",
"integrity": "sha512-6kBKf64aVfx93UJrcyEZ+OBM5nGv4RLsI6sR1Ar34bpgvGVRoyTgpxn4ZmtxOM5aDTAaaznYuYUH8bUX3Nk3YA=="
},
"@types/minimatch": { "@types/minimatch": {
"version": "3.0.3", "version": "3.0.3",
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz",
@ -2604,6 +2606,17 @@
"integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
"dev": true "dev": true
}, },
"clipboard": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.4.tgz",
"integrity": "sha512-Vw26VSLRpJfBofiVaFb/I8PVfdI1OxKcYShe6fm0sP/DtmiWQNCjhM/okTvdCo0G+lMMm1rMYbk4IK4x1X+kgQ==",
"optional": true,
"requires": {
"good-listener": "^1.2.2",
"select": "^1.1.2",
"tiny-emitter": "^2.0.0"
}
},
"cliui": { "cliui": {
"version": "4.1.0", "version": "4.1.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz",
@ -2736,8 +2749,7 @@
"commander": { "commander": {
"version": "2.20.0", "version": "2.20.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz",
"integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ=="
"dev": true
}, },
"commondir": { "commondir": {
"version": "1.0.1", "version": "1.0.1",
@ -3238,6 +3250,12 @@
"integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
"dev": true "dev": true
}, },
"delegate": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz",
"integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==",
"optional": true
},
"depd": { "depd": {
"version": "1.1.2", "version": "1.1.2",
"resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
@ -4297,6 +4315,15 @@
} }
} }
}, },
"good-listener": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz",
"integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=",
"optional": true,
"requires": {
"delegate": "^3.1.2"
}
},
"graceful-fs": { "graceful-fs": {
"version": "4.2.1", "version": "4.2.1",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.1.tgz", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.1.tgz",
@ -4310,9 +4337,9 @@
"dev": true "dev": true
}, },
"handlebars": { "handlebars": {
"version": "4.1.2", "version": "4.4.0",
"resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.0.tgz",
"integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", "integrity": "sha512-xkRtOt3/3DzTKMOt3xahj2M/EqNhY988T+imYSlMgs5fVhLN2fmKVVj0LtEGmb+3UUYV5Qmm1052Mm3dIQxOvw==",
"dev": true, "dev": true,
"requires": { "requires": {
"neo-async": "^2.6.0", "neo-async": "^2.6.0",
@ -5669,8 +5696,7 @@
"console-control-strings": { "console-control-strings": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"core-util-is": { "core-util-is": {
"version": "1.0.2", "version": "1.0.2",
@ -5787,8 +5813,7 @@
"inherits": { "inherits": {
"version": "2.0.3", "version": "2.0.3",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"ini": { "ini": {
"version": "1.3.5", "version": "1.3.5",
@ -5830,7 +5855,6 @@
"version": "2.3.5", "version": "2.3.5",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"safe-buffer": "^5.1.2", "safe-buffer": "^5.1.2",
"yallist": "^3.0.0" "yallist": "^3.0.0"
@ -5849,7 +5873,6 @@
"version": "0.5.1", "version": "0.5.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"minimist": "0.0.8" "minimist": "0.0.8"
} }
@ -5943,7 +5966,6 @@
"version": "1.4.0", "version": "1.4.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"wrappy": "1" "wrappy": "1"
} }
@ -6029,8 +6051,7 @@
"safe-buffer": { "safe-buffer": {
"version": "5.1.2", "version": "5.1.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"safer-buffer": { "safer-buffer": {
"version": "2.1.2", "version": "2.1.2",
@ -6066,7 +6087,6 @@
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"code-point-at": "^1.0.0", "code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0", "is-fullwidth-code-point": "^1.0.0",
@ -6130,14 +6150,12 @@
"wrappy": { "wrappy": {
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"yallist": { "yallist": {
"version": "3.0.3", "version": "3.0.3",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
} }
} }
}, },
@ -6247,6 +6265,14 @@
"source-map-support": "^0.5.5" "source-map-support": "^0.5.5"
} }
}, },
"katex": {
"version": "0.11.1",
"resolved": "https://registry.npmjs.org/katex/-/katex-0.11.1.tgz",
"integrity": "sha512-5oANDICCTX0NqYIyAiFCCwjQ7ERu3DQG2JFHLbYOf+fXaMoH8eg/zOq5WSYJsKMi/QebW+Eh3gSM+oss1H/bww==",
"requires": {
"commander": "^2.19.0"
}
},
"killable": { "killable": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz",
@ -6530,6 +6556,11 @@
"object-visit": "^1.0.0" "object-visit": "^1.0.0"
} }
}, },
"marked": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/marked/-/marked-0.7.0.tgz",
"integrity": "sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg=="
},
"md5.js": { "md5.js": {
"version": "1.3.5", "version": "1.3.5",
"resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
@ -6934,6 +6965,18 @@
"integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==",
"dev": true "dev": true
}, },
"ngx-markdown": {
"version": "8.2.1",
"resolved": "https://registry.npmjs.org/ngx-markdown/-/ngx-markdown-8.2.1.tgz",
"integrity": "sha512-59LG8rEoOwDsZyyJckp+QDnW/c5wMaRpNkb6TWktlBVTfQKyAYHr6BuSskVbZ4y8nsj54UQg0CDFLBOfUiqOwA==",
"requires": {
"@types/marked": "^0.6.5",
"katex": "^0.11.1",
"marked": "^0.7.0",
"prismjs": "^1.16.0",
"tslib": "^1.9.0"
}
},
"nice-try": { "nice-try": {
"version": "1.0.5", "version": "1.0.5",
"resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
@ -7794,6 +7837,14 @@
"integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=",
"dev": true "dev": true
}, },
"prismjs": {
"version": "1.17.1",
"resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.17.1.tgz",
"integrity": "sha512-PrEDJAFdUGbOP6xK/UsfkC5ghJsPJviKgnQOoxaDbBjwc8op68Quupwt1DeAFoG8GImPhiKXAvvsH7wDSLsu1Q==",
"requires": {
"clipboard": "^2.0.0"
}
},
"process": { "process": {
"version": "0.11.10", "version": "0.11.10",
"resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
@ -8579,6 +8630,12 @@
"ajv-keywords": "^3.1.0" "ajv-keywords": "^3.1.0"
} }
}, },
"select": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz",
"integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=",
"optional": true
},
"select-hose": { "select-hose": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
@ -9711,6 +9768,12 @@
"setimmediate": "^1.0.4" "setimmediate": "^1.0.4"
} }
}, },
"tiny-emitter": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
"integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==",
"optional": true
},
"tmp": { "tmp": {
"version": "0.0.33", "version": "0.0.33",
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
@ -11174,8 +11237,7 @@
"ansi-regex": { "ansi-regex": {
"version": "2.1.1", "version": "2.1.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"aproba": { "aproba": {
"version": "1.2.0", "version": "1.2.0",
@ -11218,8 +11280,7 @@
"code-point-at": { "code-point-at": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"concat-map": { "concat-map": {
"version": "0.0.1", "version": "0.0.1",
@ -11230,8 +11291,7 @@
"console-control-strings": { "console-control-strings": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"core-util-is": { "core-util-is": {
"version": "1.0.2", "version": "1.0.2",
@ -11348,8 +11408,7 @@
"inherits": { "inherits": {
"version": "2.0.3", "version": "2.0.3",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"ini": { "ini": {
"version": "1.3.5", "version": "1.3.5",
@ -11361,7 +11420,6 @@
"version": "1.0.0", "version": "1.0.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"number-is-nan": "^1.0.0" "number-is-nan": "^1.0.0"
} }
@ -11384,14 +11442,12 @@
"minimist": { "minimist": {
"version": "0.0.8", "version": "0.0.8",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"minipass": { "minipass": {
"version": "2.3.5", "version": "2.3.5",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"safe-buffer": "^5.1.2", "safe-buffer": "^5.1.2",
"yallist": "^3.0.0" "yallist": "^3.0.0"
@ -11410,7 +11466,6 @@
"version": "0.5.1", "version": "0.5.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"minimist": "0.0.8" "minimist": "0.0.8"
} }
@ -11491,8 +11546,7 @@
"number-is-nan": { "number-is-nan": {
"version": "1.0.1", "version": "1.0.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"object-assign": { "object-assign": {
"version": "4.1.1", "version": "4.1.1",
@ -11504,7 +11558,6 @@
"version": "1.4.0", "version": "1.4.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"wrappy": "1" "wrappy": "1"
} }
@ -11590,8 +11643,7 @@
"safe-buffer": { "safe-buffer": {
"version": "5.1.2", "version": "5.1.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"safer-buffer": { "safer-buffer": {
"version": "2.1.2", "version": "2.1.2",
@ -11627,7 +11679,6 @@
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"code-point-at": "^1.0.0", "code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0", "is-fullwidth-code-point": "^1.0.0",
@ -11647,7 +11698,6 @@
"version": "3.0.1", "version": "3.0.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"ansi-regex": "^2.0.0" "ansi-regex": "^2.0.0"
} }
@ -11691,14 +11741,12 @@
"wrappy": { "wrappy": {
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"yallist": { "yallist": {
"version": "3.0.3", "version": "3.0.3",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
} }
} }
}, },

View File

@ -1,47 +1,51 @@
{ {
"name": "framadate", "name": "framadate-funky-frontend",
"version": "0.0.0", "version": "0.1.0",
"scripts": { "scripts": {
"ng": "ng", "ng": "ng",
"start": "ng serve", "start": "ng serve",
"build": "ng build", "build": "ng build",
"test": "ng test", "test": "ng test",
"lint": "ng lint", "lint": "ng lint",
"e2e": "ng e2e" "e2e": "ng e2e",
}, "trans": "ng xi18n --output-path=src/locale --i18n-locale=fr"
"private": true, },
"dependencies": { "private": true,
"@angular/animations": "~8.2.0", "dependencies": {
"@angular/common": "~8.2.0", "@angular/animations": "~8.2.0",
"@angular/compiler": "~8.2.0", "@angular/common": "~8.2.0",
"@angular/core": "~8.2.0", "@angular/compiler": "~8.2.0",
"@angular/forms": "~8.2.0", "@angular/core": "~8.2.0",
"@angular/platform-browser": "~8.2.0", "@angular/forms": "~8.2.0",
"@angular/platform-browser-dynamic": "~8.2.0", "@angular/platform-browser": "~8.2.0",
"@angular/router": "~8.2.0", "@angular/platform-browser-dynamic": "~8.2.0",
"rxjs": "~6.4.0", "@angular/router": "~8.2.0",
"tslib": "^1.10.0", "@ngx-translate/core": "^11.0.1",
"zone.js": "~0.9.1" "@ngx-translate/http-loader": "^4.0.0",
}, "ngx-markdown": "^8.2.1",
"devDependencies": { "rxjs": "~6.4.0",
"@angular-devkit/build-angular": "~0.802.1", "tslib": "^1.10.0",
"@angular/cli": "~8.2.1", "zone.js": "~0.9.1"
"@angular/compiler-cli": "~8.2.0", },
"@angular/language-service": "~8.2.0", "devDependencies": {
"@types/node": "~8.9.4", "@angular-devkit/build-angular": "~0.802.1",
"@types/jasmine": "~3.3.8", "@angular/cli": "~8.2.1",
"@types/jasminewd2": "~2.0.3", "@angular/compiler-cli": "~8.2.0",
"codelyzer": "^5.0.0", "@angular/language-service": "~8.2.0",
"jasmine-core": "~3.4.0", "@types/node": "~8.9.4",
"jasmine-spec-reporter": "~4.2.1", "@types/jasmine": "~3.3.8",
"karma": "~4.1.0", "@types/jasminewd2": "~2.0.3",
"karma-chrome-launcher": "~2.2.0", "codelyzer": "^5.0.0",
"karma-coverage-istanbul-reporter": "~2.0.1", "jasmine-core": "~3.4.0",
"karma-jasmine": "~2.0.1", "jasmine-spec-reporter": "~4.2.1",
"karma-jasmine-html-reporter": "^1.4.0", "karma": "~4.1.0",
"protractor": "~5.4.0", "karma-chrome-launcher": "~2.2.0",
"ts-node": "~7.0.0", "karma-coverage-istanbul-reporter": "~2.0.1",
"tslint": "~5.15.0", "karma-jasmine": "~2.0.1",
"typescript": "~3.5.3" "karma-jasmine-html-reporter": "^1.4.0",
} "protractor": "~5.4.0",
"ts-node": "~7.0.0",
"tslint": "~5.15.0",
"typescript": "~3.5.3"
}
} }

View File

@ -1,17 +1,25 @@
<header style="text-align:center"> <header style="text-align:center">
<a [routerLink]="'home'" class="home_link" aria-roledescription="home"> <a [routerLink]="'home'" class="home_link" aria-roledescription="home">
<h1> <h1>
<span class="logo_first">Frama</span> <span class="logo_first">Frama</span>
<span class="logo_second">date</span> <span class="logo_second">date</span>
</h1> </h1>
<i i18n>
Ceci est une démo </a>
</i> <div id="translate_example">
</a> <div class="lang-choices">
<button class="btn btn-info" (click)="switchLanguage('en')">en</button>
<button class="btn btn-info" (click)="switchLanguage('fr')">fr</button>
</div>
<h1 i18n>{{"Title"|translate}}</h1>
<div>
{{"Intro"|translate:user}}
</div>
</div>
</header> </header>
<framadate-navigation></framadate-navigation> <framadate-navigation></framadate-navigation>
<main> <main>
<router-outlet></router-outlet> <router-outlet></router-outlet>
</main> </main>
<framadate-debugger></framadate-debugger> <framadate-debugger></framadate-debugger>

View File

@ -1,10 +1,26 @@
import { Component } from '@angular/core'; import {Component} from '@angular/core';
import {TranslateService} from "@ngx-translate/core";
@Component({ @Component({
selector: 'app-root', selector: 'app-root',
templateUrl: './app.component.html', templateUrl: './app.component.html',
styleUrls: ['./app.component.scss'] styleUrls: ['./app.component.scss']
}) })
export class AppComponent { export class AppComponent {
title = 'framadate'; title = 'framadate';
//translation demo:
minutes = 12;
user = {
name: 'Arthur',
age: 42
};
constructor(private translate: TranslateService) {
this.translate.setDefaultLang('fr');
}
switchLanguage(language: string) {
this.translate.use(language);
}
} }

View File

@ -21,14 +21,36 @@ import {EndConfirmationComponent} from './pages/end-confirmation/end-confirmatio
import {CreateOrRetrieveComponent} from './pages/create-or-retrieve/create-or-retrieve.component'; import {CreateOrRetrieveComponent} from './pages/create-or-retrieve/create-or-retrieve.component';
import {CalendarComponent} from './calendar/calendar.component'; import {CalendarComponent} from './calendar/calendar.component';
import localeFr from '@angular/common/locales/fr'; import localeFr from '@angular/common/locales/fr';
import localeEn from '@angular/common/locales/en';
import {VotingSummaryComponent} from './pages/voting-summary/voting-summary.component'; import {VotingSummaryComponent} from './pages/voting-summary/voting-summary.component';
import {VotingGraphComponent} from './pages/voting-graph/voting-graph.component'; import {VotingGraphComponent} from './pages/voting-graph/voting-graph.component';
import {VotingChoiceComponent} from './pages/voting-choice/voting-choice.component'; import {VotingChoiceComponent} from './pages/voting-choice/voting-choice.component';
import {PasswordComponent} from './pages/password/password.component'; import {PasswordComponent} from './pages/password/password.component';
import {HomeComponent} from './pages/home/home.component'; import {HomeComponent} from './pages/home/home.component';
import {VoteChoiceComponent} from './vote-choice/vote-choice.component'; import {VoteChoiceComponent} from './vote-choice/vote-choice.component';
import {HttpClient, HttpClientModule} from '@angular/common/http';
import { MarkdownModule } from 'ngx-markdown';
import {
MissingTranslationHandler,
MissingTranslationHandlerParams,
TranslateLoader,
TranslateModule,
TranslateService
} from '@ngx-translate/core';
import {TranslateHttpLoader} from '@ngx-translate/http-loader';
export class MyMissingTranslationHandler implements MissingTranslationHandler {
handle(params: MissingTranslationHandlerParams) {
return 'some value';
}
}
registerLocaleData(localeFr, 'fr'); registerLocaleData(localeFr, 'fr');
registerLocaleData(localeEn, 'en');
export function HttpLoaderFactory(http: HttpClient) {
return new TranslateHttpLoader(http);
}
@NgModule({ @NgModule({
declarations: [ declarations: [
@ -58,10 +80,24 @@ registerLocaleData(localeFr, 'fr');
CommonModule, CommonModule,
BrowserModule, BrowserModule,
AppRoutingModule, AppRoutingModule,
MarkdownModule.forRoot(),
TranslateModule.forRoot({
missingTranslationHandler: {
provide: MissingTranslationHandler,
useClass: MyMissingTranslationHandler,
},
// useDefaultLang: false,
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient]
}
}),
HttpClientModule,
FormsModule, FormsModule,
RouterModule.forRoot(Routes) RouterModule.forRoot(Routes)
], ],
providers: [{provide: LOCALE_ID, useValue: "fr-FR"}], providers: [TranslateService],
bootstrap: [AppComponent] bootstrap: [AppComponent]
}) })
export class AppModule { export class AppModule {

View File

@ -1,27 +1,29 @@
<div class="well debug"> <div class="well debug">
<strong>
<strong> <h2 i18n>
<h2 i18n> infos de debug
infos de debug </h2>
</h2> <span class="demo">
</strong> {{"config.demo"|translate}}
<ul> </span>
<li> </strong>
étape actuelle {{config.step}} / {{config.stepMax}} <ul>
</li> <li>
<li> étape actuelle {{config.step}} / {{config.stepMax}}
formulaire valide : {{formIsValid}} </li>
</li> <li>
<li> formulaire valide : {{formIsValid}}
type de formulaire: {{config.pollType}} </li>
</li> <li>
<li> type de formulaire: {{config.pollType}}
config: </li>
<pre> <li>
{{config|json}} config:
</pre> <pre>
</li> {{config|json}}
</ul> </pre>
</li>
</ul>
</div> </div>
<span i18n> <span i18n>
@ -62,5 +64,5 @@
i18n i18n
(click)="config.sendForm()" (click)="config.sendForm()"
> >
Envoyer le formulaire Envoyer le formulaire
</button> </button>

View File

@ -1,7 +1,7 @@
<div class="answers"> <div class="answers">
<h1 i18n> <h1 i18n>
Choisir les propositions Choisir les propositions
</h1> </h1>
<p class="subtitle" i18n> <p class="subtitle" i18n>
Vous pouvez utiliser la syntaxe markdown Vous pouvez utiliser la syntaxe markdown

View File

@ -1,2 +1,4 @@
<h1>Ce composant est celui de base pour les pages</h1> <h1>Ce composant est celui de base pour les pages</h1>
<a [routerLink]="'/step/end'" class="btn btn--primary" i18n="@@confirm">C'est parfait!</a> <a [routerLink]="'/step/end'" class="btn btn-block" i18n="@@confirm">
{{"config.perfect"|translate}}
</a>

View File

@ -1,56 +1,55 @@
<section class="creation"> <section class="creation">
<h1 i18n> <h1>
Créer un sondage {{"creation.title"|translate}}
</h1> </h1>
<p <p
class="description" class="description"
i18n i18n
> >
Planifiez des rendez-vous avec vos amis ou votre famille ou créez un sondage avec du texte, des images ou des {{"config.title"|translate}}
liens… un sondage quoi ! </p>
</p> <div class="btn-next">
<div class="btn-next"> <a
<button [routerLink]="'/home'"
class="btn btn--primary" >
[routerLink]="'/home'"
>
<span <span
class="text" class="text"
i18n i18n
> >
C'est parti {{"config.letsgo"|translate}}
</span> </span>
<span class="icon right">
</button> >
</div> </span>
</a>
</div>
</section> </section>
<section class="recuperation"> <section class="recuperation">
<h1 i18n> <h1>
Mes sondages {{"config.find_my_polls"|translate}}
</h1> </h1>
<form <form
action="https://framadate.org/find_polls.php" action="https://framadate.org/find_polls.php"
method="post" method="post"
> >
<label <label
class="description" class="description"
for="email" for="email"
i18n i18n
> >
Je cherche les sondages qui correspondent à mon mail : {{"config.find_helper"|translate}} :
</label> </label>
<input <input
type="email" type="email"
name="mail" name="mail"
id="email" id="email"
autofocus="autofocus" autofocus="autofocus"
/> />
<input <input
type="submit" type="submit"
class="btn btn--primary btn--outline" class="btn btn-block"
i18n i18n-value="'config.find_button'|translate"
value="Retrouver mes sondages" />
/> </form>
</form>
</section> </section>

View File

@ -1,58 +1,56 @@
<div i18n> <div i18n>
Config spécialement pour les dates {{"dates.title"|translate}}
</div> </div>
<div> <div>
<select <label for="multi_hours">
name="multi_hours"
id="multi_hours"
[(ngModel)]="config.allowSeveralHours"
>
<option value="true">possiblement différents</option>
<option value="false">identiques</option>
</select>
<label for="multi_hours">
<span i18n> <span i18n>
Je souhaite mettre des créneaux horaires Je souhaite mettre des créneaux horaires
</span> </span>
<select
<span i18n> name="multi_hours"
id="multi_hours"
[(ngModel)]="config.allowSeveralHours"
>
<option value="true">{{"dates.multiple.different"|translate}}</option>
<option value="false">{{"dates.multiple.identical"|translate}}</option>
</select>
<span i18n>
pour chaque journée pour chaque journée
</span> </span>
</label> </label>
</div> </div>
<button <button
class="btn btn--primary" class="btn btn-primary"
(click)="addDate()" (click)="addDate()"
i18n i18n
> >
Ajouter une plage de dates {{"dates.add"|translate}}
</button> </button>
<div class="dates-list"> <div class="dates-list">
{{config.dateList.length}} {{config.dateList.length}}
<span i18n> <span i18n>
choix de Dates {{"dates.count_dates"|translate}}
</span> </span>
<div <div
*ngFor="let choice of config.dateList; index as id" *ngFor="let choice of config.dateList; index as id"
class="date-choice" class="date-choice"
> >
<input <input
type="text" type="text"
name="dateChoices[]" name="dateChoices[]"
[(ngModel)]="choice.literal" [(ngModel)]="choice.literal"
> >
<button (click)="config.dateList.splice(id, 1)">X</button> <button (click)="config.dateList.splice(id, 1)">X</button>
</div> </div>
</div> </div>
<a <a
[routerLink]="'/step/end'" [routerLink]="'/step/end'"
class="btn btn--primary" class="btn btn-block"
> >
C'est parfait! C'est parfait!
</a> </a>

View File

@ -1,9 +1,6 @@
<h1 i18n> <h1 i18n>
Et c'est tout pour nous! {{"resume.title"|translate}}
</h1> </h1>
<p>Votre sondage "{{ config.title }}" a bien été crée <br> <h2 i18n>{{"resume.admins"|translate}}</h2>
Voici les liens d'accès au sondage,conservez les soigneusement <h2 i18n>{{"resume.users"|translate}}</h2>
</p> <h2 i18n>{{"resume.link_mail"|translate}}</h2>
<h2 i18n>Coté administrateur-ice-eux</h2>
<h2 i18n>Coté sondés</h2>
<h2 i18n>recevoir les liens par e-mail</h2>

View File

@ -1,80 +1,83 @@
<div class="description"> <div class="description">
<router-outlet></router-outlet>
<h1 i18n>
{{"creation.title"|translate}}
</h1>
<span
class="pre-selector"
i18n
>
{{"creation.want"|translate}}
</span>
<select
id="selector"
name="selector"
autofocus="autofocus"
[(ngModel)]="config.pollType"
>
<option value="dates">
{{"creation.kind.date"|translate}}
</option>
<option value="classic">
{{"creation.kind.classic"|translate}}
</option>
</select>
<router-outlet></router-outlet> <span class="post-selector">
<h1 i18n> </span>
Pour commencer
</h1>
<span
class="pre-selector"
i18n
>
Je veux créer un sondage
</span>
<select
id="selector"
name="selector"
autofocus="autofocus"
[(ngModel)]="config.pollType"
>
<option value="dates">
spécial dates
</option>
<option value="classic">
classique
</option>
</select>
<span class="post-selector">
</span>
<div>
<label <div>
for="poll_title"
class="title-label"
i18n
>
Dont le titre sera
</label>
<input
type="text"
id="poll_title"
name="poll_title"
[(ngModel)]="config.title"
>
</div> <label
<div> for="poll_title"
<label for="my_name"> class="title-label"
Je peux aussi préciser mon nom si je le souhaite : i18n
</label> >
<input {{"creation.choose_title"|translate}}
type="text" </label>
name="my_name" <input
id="my_name" type="text"
[(ngModel)]="config.myName" id="poll_title"
> name="poll_title"
</div> placeholder="titre"
<div> [(ngModel)]="config.title"
>
</div>
<label <div>
for="poll_description" <label for="my_name">
class="title-label" {{"creation.name"|translate}} :
i18n </label>
> <input
et la description serait type="text"
</label> name="my_name"
<textarea id="my_name"
id="poll_description" placeholder="mon nom"
name="poll_description" [(ngModel)]="config.myName"
[(ngModel)]="config.description" >
cols="50" </div>
lines="5"
></textarea>
</div> <div>
<label
for="poll_description"
class="title-label"
i18n
>
{{"creation.description"|translate}}
</label>
<textarea
id="poll_description"
name="poll_description"
[(ngModel)]="config.description"
placeholder="description"
cols="50"
lines="5"
></textarea>
</div>
<button <button
[routerLink]="'/step/answers'" [routerLink]="'/step/answers'"
class="btn btn--primary" class="btn btn-block"
i18n i18n
> >
Continuer Continuer
@ -85,5 +88,6 @@
i18n i18n
> >
Retour Retour
</a> </a>
<hr>
</div> </div>

View File

@ -1,6 +1,6 @@
<!--ceci est la popup pour ajouter une image--> <!--ceci est la popup pour ajouter une image-->
<h1 i18n> <h1 i18n>
Images Images
</h1> </h1>
<a [routerLink]="'/step/visibility'" class="btn btn--primary">ok</a> <a [routerLink]="'/step/visibility'" class="btn btn--primary">ok</a>

View File

@ -2,9 +2,9 @@
Résumé avant validation Résumé avant validation
</h1> </h1>
<section> <section>
TODO <div markdown *ngFor="let questions of config.answers">
<pre> {{questions.id+1}}. {{questions.text}}
{{config |json}} </div>
</pre> <button [routerLink]="'/step/answers'" class="btn btn-info">Retour</button>
</section> </section>
<button [routerLink]="'/step/end'" class="btn btn--primary" i18n="@@confirm">C'est parfait!</button> <button [routerLink]="'/step/end'" class="btn btn--primary" i18n="@@confirm">C'est parfait!</button>

View File

@ -1,14 +1,14 @@
<h1 i18n> <h1 i18n>
Visibilité des réponses {{"visibility.title"|translate}}
</h1> </h1>
<h1 i18n> <h1 i18n>
Votes {{"visibility.votes"|translate}}
</h1> </h1>
<h1 i18n> <h1 i18n>
Archivage {{"visibility.archiving"|translate}}
</h1> </h1>
<h1 i18n> <h1 i18n>
Accès au sondage {{"visibility.access"|translate}}
</h1> </h1>
<a [routerLink]="'/step/end'" class="btn btn--primary" i18n="@@confirm">C'est parfait!</a> <a [routerLink]="'/step/end'" class="btn btn--primary" i18n="@@confirm">C'est parfait!</a>

View File

@ -1,29 +1,29 @@
<nav class="choices"> <nav class="choices">
<a [routerLink]="'/step/creation'"> <a [routerLink]="'/step/creation'" i18n>
Création Création
</a> </a>
<a [routerLink]="'/step/date'"> <a [routerLink]="'/step/date'" i18n>
Les Dates Les Dates
</a> </a>
<a [routerLink]="'/step/answers'"> <a [routerLink]="'/step/answers'" i18>
Réponses Réponses
</a> </a>
<a [routerLink]="'/step/visibility'"> <a [routerLink]="'/step/visibility'" i18n>
Visibilité Visibilité
</a> </a>
<a [routerLink]="'/step/base'"> <a [routerLink]="'/step/base'" i18n>
Base Base
</a> </a>
<a [routerLink]="'/step/pictures'"> <a [routerLink]="'/step/pictures'" i18n>
Images Images
</a> </a>
<a [routerLink]="'/step/resume'"> <a [routerLink]="'/step/resume'" i18n>
Résumé Résumé
</a> </a>
<a [routerLink]="'/step/kind'"> <a [routerLink]="'/step/kind'" i18n>
Page démo Page démo
</a> </a>
<a [routerLink]="'/home'"> <a [routerLink]="'/home'" i18n>
Accueil Accueil
</a> </a>
</nav> </nav>

64
src/assets/i18n/en.json Normal file
View File

@ -0,0 +1,64 @@
{
"Title": "Translation example",
"Intro": "Hello I am {{name}}, I am {{age}} years old.",
"home": {
"title": "home's title"
},
"config": {
"demo": "this is a demo",
"demo_other": "this is an other demo",
"continue": "Continue",
"perfect": "That's perfect",
"title": "Create a poll",
"letsgo": "Lets go!",
"description": "Shedule appointments with your friends or your family, or create a pool with text, pictures or links… A real survey!",
"find_my_polls": "Where are my polls ?",
"find_helper": "I am looking for polls linked to my email",
"find_button": "Find my polls"
},
"creation": {
"title": "To begin with",
"want": "I want to create a poll",
"kind": {
"classic": "classic",
"date": "special dates"
},
"choose_title": "Whom title will be",
"choose_title_placeholder": "title",
"name": "I can also specify my name if i want",
"name_placeholder": "my name",
"description": "and the description would be",
"description_placeholder": "summary of the poll's purpose"
},
"dates": {
"title": "Config especially for the dates",
"hours_different": "I want to put slots for each day",
"multiple": {
"identical": "same",
"different": "possibly different"
},
"add": "Add a date range",
"count_dates": "choices of dates"
},
"choices": {
"title": "Write the proposals",
"helper": "You can use markdown syntax",
"answer_preset_1": "Demo answer 1",
"answer_preset_2": "answer 2",
"answer_preset_3": "and D, the answer D",
"add": "Add",
"continue": "Let's see how it goes"
},
"resume": {
"title": "And that's all for us!",
"admins": "Admin side",
"users": "Respondent side",
"links_mail": "Receive links by email"
},
"visibility": {
"title": "Visibility of answers",
"votes": "Votes",
"archiving": "Archiving",
"access": "Access to the pool"
}
}

64
src/assets/i18n/fr.json Normal file
View File

@ -0,0 +1,64 @@
{
"Title": "Example de traduction",
"Intro": "Bonjour je m'appelle {{name}}, j'ai {{age}} ans.",
"home": {
"title": "le titre de la home"
},
"config": {
"demo": "C'est une démo traduite en Français",
"demo_other": "C'est une <strong>autre</strong> démo traduite en Français",
"continue": "Continuer",
"perfect": "C'est parfait",
"title": "Créer un sondage",
"letsgo": "C'est parti'",
"description": "Planifiez des rendez-vous avec vos amis ou votre famille ou créez un sondage avec du texte, des images ou des liens… un sondage quoi !",
"find_my_polls": "Où sont mes sondages ?",
"find_helper": "Je cherche les sondages qui correspondent à mon mail",
"find_button": "Retrouver mes sondages"
},
"creation": {
"title": "Pour commencer ",
"want": "Je veux créer un sondage",
"kind": {
"classic": "classique",
"date": "spécial dates"
},
"choose_title": "Dont le titre sera",
"choose_title_placeholder": "titre",
"name": "Je peux aussi préciser mon nom si je le souhaite",
"name_placeholder": "mon nom",
"description": "et la description serait",
"description_placeholder": "description"
},
"dates": {
"title": "Config spécialement pour les dates ",
"hours_different": "Je souhaite mettre des créneaux horaires pour chaque journée",
"multiple": {
"identical": "identiques",
"different": "possiblement différentes"
},
"add": "Ajouter une plage de dates",
"count_dates": "choix de dates"
},
"choices": {
"title": "Choisir les propositions",
"helper": "vous pouvez utiliser la syntaxe markdown ",
"answer_preset_1": "réponse de démo 1",
"answer_preset_2": "réponse 2",
"answer_preset_3": "la réponse D",
"add": "Ajouter",
"continue": "Voyons ce que ça donne"
},
"resume": {
"title": "Et c'est tout pour nous !",
"admins": "Coté administrateur-ice-eux",
"users": "Coté sondés",
"links_mail": "recevoir les liens par e-mail"
},
"visibility": {
"title": "Visibilité des réponses",
"votes": "Votes",
"archiving": "Archivage",
"access": "Accès au sondage"
}
}

View File

@ -1,3 +1,8 @@
.logo_first, .logo_second {
padding-left: 0;
padding-right: 0;
}
.logo_first { .logo_first {
color: $logo_color; color: $logo_color;
} }

View File

@ -1,16 +1,16 @@
<!doctype html> <!doctype html>
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Framadate</title> <title>Framadate</title>
<base href="/"> <base href="/">
<meta content="width=device-width, initial-scale=1" name="viewport"> <meta content="width=device-width, initial-scale=1" name="viewport">
<link href="favicon.ico" rel="icon" type="image/x-icon"> <link href="favicon.ico" rel="icon" type="image/x-icon">
<link rel="stylesheet" href="assets/css/bootstrap-reboot-4.3.1.css"> <link rel="stylesheet" href="assets/css/bootstrap-reboot-4.3.1.css">
</head> </head>
<body> <body>
<app-root></app-root> <app-root></app-root>
</body> </body>
</html> </html>

View File

@ -1,59 +1,39 @@
<?xml version="1.0" encoding="UTF-8" ?> <?xml version="1.0" encoding="UTF-8" ?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2"> <xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
<file source-language="en" datatype="plaintext" original="ng2.template"> <file source-language="fr" datatype="plaintext" original="ng2.template">
<body> <body>
<trans-unit id="5f48694aae82f756b2486bed76c1fa564bac44e3" datatype="html"> <trans-unit id="demo" datatype="html">
<source> <source>
Ceci est une démo Ceci est une démo
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/app.component.html</context> <context context-type="sourcefile">src/app/app.component.html</context>
<context context-type="linenumber">7</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
<note priority="1" from="description">introduction header saying just demo </note>
<note priority="1" from="meaning">demo title</note>
</trans-unit> </trans-unit>
<trans-unit id="c9a7731e9e283ee83d0c2fd1747e57f9cba067d6" datatype="html"> <trans-unit id="plural_example" datatype="html">
<source> <source>
Pour commencer Updated <x id="ICU" equiv-text="{minutes, plural, =0 {...} =1 {...} other {...}}"/>
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/form-container/form-container.component.html</context> <context context-type="sourcefile">src/app/app.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
</trans-unit>
<trans-unit id="e40f615c5bada8d5458ede5b03812bdb8074d7d7" datatype="html">
<source>
Je veux créer un sondage
</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/form-container/form-container.component.html</context>
<context context-type="linenumber">10</context> <context context-type="linenumber">10</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="805abd40471b9825d00b1a958e5ecaf244d84a8f" datatype="html"> <trans-unit id="5a134dee893586d02bffc9611056b9cadf9abfad" datatype="html">
<source> <source>{VAR_PLURAL, plural, =0 {just now} =1 {one minute ago} other {<x id="INTERPOLATION" equiv-text="{{minutes}}"/> minutes ago} }</source>
Dont le titre sera
</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/form-container/form-container.component.html</context> <context context-type="sourcefile">src/app/app.component.html</context>
<context context-type="linenumber">34</context> <context context-type="linenumber">11</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5bf90b01331c01753f8446a4c931b942b128f7ab" datatype="html"> <trans-unit id="c279d3eb8220c1a0b77adb0a520b3e81f086d046" datatype="html">
<source> <source>placeholder à traduire</source>
et la description serait
</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/form-container/form-container.component.html</context> <context context-type="sourcefile">src/app/app.component.html</context>
<context context-type="linenumber">64</context> <context context-type="linenumber">13</context>
</context-group>
</trans-unit>
<trans-unit id="43c8155b739dc52b87e8deabeda5f93baf5fcfe5" datatype="html">
<source>
Continuer
</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/form-container/form-container.component.html</context>
<context context-type="linenumber">82</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="confirm" datatype="html"> <trans-unit id="confirm" datatype="html">
@ -75,9 +55,9 @@
<context context-type="linenumber">10</context> <context context-type="linenumber">10</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="cf84be7024daae2b7a58064917082c3c48964f6b" datatype="html"> <trans-unit id="8dfa2af2946c94200a9c49226ac8221ddec0834d" datatype="html">
<source> <source>
Config spécialement pour les dates Config spécialement pour les dates
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/dates/dates.component.html</context> <context context-type="sourcefile">src/app/pages/dates/dates.component.html</context>
@ -102,9 +82,9 @@
<context context-type="linenumber">20</context> <context context-type="linenumber">20</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="e8ecc8aa309cfa900b1a70db4e53564bb7c91279" datatype="html"> <trans-unit id="0bd3bae4b21407cbd1ab7f12f2516aba84ee8cd5" datatype="html">
<source> <source>
Ajouter une plage de dates Ajouter une plage de dates
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/dates/dates.component.html</context> <context context-type="sourcefile">src/app/pages/dates/dates.component.html</context>
@ -120,10 +100,10 @@
<context context-type="linenumber">35</context> <context context-type="linenumber">35</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="8ba76abb289f2f5f1aca7be9ba2ed719776c08b4" datatype="html"> <trans-unit id="6387b579b9b1bdb74c3dfd9d63387adb40076376" datatype="html">
<source> <source>
infos de debug infos de debug
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/debugger/debugger.component.html</context> <context context-type="sourcefile">src/app/debugger/debugger.component.html</context>
<context context-type="linenumber">4</context> <context context-type="linenumber">4</context>
@ -156,90 +136,90 @@
<context context-type="linenumber">51</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="48d19c1e53f2688d4a4644e7469dbe178c41b94b" datatype="html"> <trans-unit id="9dffbece2b62a762cc013cd9a092a45386644395" datatype="html">
<source> <source>
Envoyer le formulaire Envoyer le formulaire
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/debugger/debugger.component.html</context> <context context-type="sourcefile">src/app/debugger/debugger.component.html</context>
<context context-type="linenumber">64</context> <context context-type="linenumber">64</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="b40afc8ef9bdf7cebd275e90d7d3a99de783316c" datatype="html"> <trans-unit id="a2e46fcfdbcd6457dd6dda15896ff772a4cccb59" datatype="html">
<source> <source>
Visibilité des réponses Visibilité des réponses
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/visibility/visibility.component.html</context> <context context-type="sourcefile">src/app/pages/visibility/visibility.component.html</context>
<context context-type="linenumber">1</context> <context context-type="linenumber">1</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="9683875f0b9358b14311cd8677625d41cd3b8761" datatype="html"> <trans-unit id="f3fa123ec08a0f55d20203474e459cb166171530" datatype="html">
<source> <source>
Votes Votes
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/visibility/visibility.component.html</context> <context context-type="sourcefile">src/app/pages/visibility/visibility.component.html</context>
<context context-type="linenumber">4</context> <context context-type="linenumber">4</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="8141de4312b125a7d4bb37407f11f051d7c8ea52" datatype="html"> <trans-unit id="07056464cc8e77270490824db1c119774a9605d8" datatype="html">
<source> <source>
Archivage Archivage
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/visibility/visibility.component.html</context> <context context-type="sourcefile">src/app/pages/visibility/visibility.component.html</context>
<context context-type="linenumber">7</context> <context context-type="linenumber">7</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="3f0000f510cabfeb754fa68a6e1d3ab1e9646310" datatype="html"> <trans-unit id="e89a47f338845c2bc853956b810455622ea70d18" datatype="html">
<source> <source>
Accès au sondage Accès au sondage
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/visibility/visibility.component.html</context> <context context-type="sourcefile">src/app/pages/visibility/visibility.component.html</context>
<context context-type="linenumber">11</context> <context context-type="linenumber">11</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="794bc2b544c051c52da8d4ff49b895e7c08fe324" datatype="html"> <trans-unit id="575c777901e66582920b91544ddfc3f1cff6dfdd" datatype="html">
<source> <source>
Résumé avant validation Résumé avant validation
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/resume/resume.component.html</context> <context context-type="sourcefile">src/app/pages/resume/resume.component.html</context>
<context context-type="linenumber">1</context> <context context-type="linenumber">1</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="482e483f961c90409e68eeeb88cd8fc9740405a9" datatype="html"> <trans-unit id="e73989397fa8b6b2a516ec090b7653d7ca8a9f2d" datatype="html">
<source> <source>
Images Images
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/pictures/pictures.component.html</context> <context context-type="sourcefile">src/app/pages/pictures/pictures.component.html</context>
<context context-type="linenumber">1</context> <context context-type="linenumber">2</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="ab5ed75fbdc05c50c07e2a989800e2c01f609096" datatype="html"> <trans-unit id="f6d82bb9d11a1a8fbfbc8dd54388b068db42fd4a" datatype="html">
<source> <source>
Choisir les propositions Choisir les propositions
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/answers/answers.component.html</context> <context context-type="sourcefile">src/app/pages/answers/answers.component.html</context>
<context context-type="linenumber">2</context> <context context-type="linenumber">2</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="9d3134dd15200d284b849d82901859540d7468b9" datatype="html"> <trans-unit id="aa15ed6f3664a52d0532b4caccc5e3862eceaff6" datatype="html">
<source> <source>
vous pouvez utiliser la syntaxe markdown vous pouvez utiliser la syntaxe markdown
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/answers/answers.component.html</context> <context context-type="sourcefile">src/app/pages/answers/answers.component.html</context>
<context context-type="linenumber">6</context> <context context-type="linenumber">6</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="2ef54ad8955ee783666a80a4a9f2d2566cde636d" datatype="html"> <trans-unit id="8c8496fbdf12a4a3ef88119cd37deca10bf6c661" datatype="html">
<source> <source>
Et c&apos;est tout pour nous! Et c&apos;est tout pour nous!
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/end-confirmation/end-confirmation.component.html</context> <context context-type="sourcefile">src/app/pages/end-confirmation/end-confirmation.component.html</context>
@ -267,20 +247,20 @@
<context context-type="linenumber">6</context> <context context-type="linenumber">6</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="fcc2982bfe4e0867b8e03ae32f12536e35e9f2ee" datatype="html"> <trans-unit id="f74e29e3e6b015dc4163c3d43002088d0e1da5dc" datatype="html">
<source> <source>
Créer un sondage Créer un sondage
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/create-or-retrieve/create-or-retrieve.component.html</context> <context context-type="sourcefile">src/app/pages/create-or-retrieve/create-or-retrieve.component.html</context>
<context context-type="linenumber">2</context> <context context-type="linenumber">2</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="ac06acb64dc44609e549c0026b8d4a0bd35a9d2d" datatype="html"> <trans-unit id="36ab2505621b4451317833191d6a4c2d7c214b3c" datatype="html">
<source> <source>
Planifiez des rendez-vous avec vos amis ou votre famille ou créez un sondage avec du texte, des images ou des Planifiez des rendez-vous avec vos amis ou votre famille ou créez un sondage avec du texte, des images ou des
liens… un sondage quoi ! liens… un sondage quoi !
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/create-or-retrieve/create-or-retrieve.component.html</context> <context context-type="sourcefile">src/app/pages/create-or-retrieve/create-or-retrieve.component.html</context>
<context context-type="linenumber">8</context> <context context-type="linenumber">8</context>
@ -295,24 +275,69 @@
<context context-type="linenumber">19</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="dde7379e3a2366fe5e1dfb96d27efab283b08bf2" datatype="html"> <trans-unit id="9e1fa5a7ae3c13a9fa4a657d94085e239066377a" datatype="html">
<source> <source>
Où sont mes sondages ? Où sont mes sondages ?
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/create-or-retrieve/create-or-retrieve.component.html</context> <context context-type="sourcefile">src/app/pages/create-or-retrieve/create-or-retrieve.component.html</context>
<context context-type="linenumber">29</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="2129459e12afb298befa20cfc241adc6ed88e612" datatype="html"> <trans-unit id="b291d9e84fc9afe337b3450266847c430523bcc5" datatype="html">
<source> <source>
Je cherche les sondages qui correspondent à mon mail : Je cherche les sondages qui correspondent à mon mail :
</source> </source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/pages/create-or-retrieve/create-or-retrieve.component.html</context> <context context-type="sourcefile">src/app/pages/create-or-retrieve/create-or-retrieve.component.html</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">40</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="9606f1c734851ad834d5f9eca4fbc79fad2cf406" datatype="html">
<source>
Pour commencer
</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/pages/home/home.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
</trans-unit>
<trans-unit id="e40f615c5bada8d5458ede5b03812bdb8074d7d7" datatype="html">
<source>
Je veux créer un sondage
</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/pages/home/home.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="99eef0ca99f5a0e0aee806ffdefb5ca1ca318b07" datatype="html">
<source>
Dont le titre sera
</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/pages/home/home.component.html</context>
<context context-type="linenumber">34</context>
</context-group>
</trans-unit>
<trans-unit id="77100ae0f206a821d33d9582dd2962f379eaeac7" datatype="html">
<source>
et la description serait
</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/pages/home/home.component.html</context>
<context context-type="linenumber">64</context>
</context-group>
</trans-unit>
<trans-unit id="114007b6744088dc57d792702b19f91f68f7926e" datatype="html">
<source>
Continuer
</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/pages/home/home.component.html</context>
<context context-type="linenumber">82</context>
</context-group>
</trans-unit>
</body> </body>
</file> </file>
</xliff> </xliff>