Simon Prévost
e04dccf6bd
Fix review percentage, personal access token, batch, diffable strings
2022-06-20 09:55:53 -04:00
Simon Prévost
9e26cfb34d
Fix first letter lint for non-latin languages
2022-06-16 15:06:42 -04:00
Simon Prévost
c3253e0439
Fix format
2022-03-30 09:07:30 -04:00
Simon Prévost
4fb82dcf16
Fix credo
2022-03-30 08:51:12 -04:00
Simon Prévost
730b6b9dda
Fix lint without master value
2022-03-30 08:37:11 -04:00
Simon Prévost
9c57b53904
Add db timeout error grouping in sentry
2022-03-18 07:01:03 -04:00
Simon Prévost
ef42ef0531
Fix empty replacement on lint view
2022-03-18 06:44:09 -04:00
Simon Prévost
dd133b3ff4
Fix machine translations from language select take 2
2022-03-15 15:09:15 -04:00
Simon Prévost
54d0462f70
Fix machine translations from language select
2022-03-15 10:17:39 -04:00
Simon Prévost
78b2c65fe1
Add machine translations document translate
2022-03-15 06:18:21 -04:00
Simon Prévost
b24a115b6d
Add new relic optional setup
2022-02-28 11:50:22 -05:00
Simon Prévost
ffdb353848
Update NodeJS deps for webapp and cli
2022-02-28 11:41:08 -05:00
Simon Prévost
66f6d32b21
Fixes
2022-02-23 11:39:47 -05:00
Simon Prévost
aa4335b9a3
Fix inspect changes in 1.13.3
2022-02-23 07:46:56 -05:00
Simon Prévost
e7c56e3eff
Add lint in CLI
2022-02-23 07:18:51 -05:00
Simon Prévost
5554d6446a
Add apostrophe lint for fr languages
2022-01-21 15:29:45 -05:00
Simon Prévost
d45cfa26f1
Fix media queries, linting and other small improvements
2022-01-21 15:07:59 -05:00
Simon Prévost
e04d267cba
Add revision on lint translation item
2021-12-23 07:59:52 -05:00
Simon Prévost
cde90b66ba
Remove autocorrect stuff
2021-12-18 21:07:01 -05:00
Simon Prévost
bc72f50b4b
Remove gleam
2021-12-12 21:18:48 -05:00
Simon Prévost
559eef3794
wip
2021-12-09 18:45:23 -05:00
Simon Prévost
eea5ec0410
Add lint translations page
2021-06-30 07:08:31 -04:00
Simon Prévost
8b7ef7b367
Refactor navigation and add badges
2021-06-28 12:57:38 -04:00
Simon Prévost
edcc7dc042
Add batched operations in activity item and refactor machine translations UI
2021-06-23 12:43:28 -04:00
Simon Prévost
8a58f8bf99
Add timeout on user socket to prevent heroky router error
2021-06-09 15:03:50 -04:00
Simon Prévost
43055188c3
Add default null option on new slave
2021-06-07 11:10:00 -04:00
Simon Prévost
e9ec74ef61
Add merge options on add translation to correct translation in the same operation
2021-06-04 16:12:33 -04:00
Simon Prévost
c874b64e97
Add export advanced filters
2021-06-04 10:18:43 -04:00
Simon Prévost
2dc3c421be
Fix long text machine translations
2021-06-04 10:17:48 -04:00
Simon Prévost
37840f1492
Update elixir deps
2021-04-23 07:28:20 -04:00
Simon Prévost
09e4301aea
Add update comment UI and API on translation and projet comments ( #236 )
...
* Add update comment UI and API on translation and projet comments
* Use erlef/setup-elixir in GitHub Actions
* Fix setup gleam
2021-02-12 06:38:47 -05:00
Simon Prévost
8b84d0f1a5
Fix related translations ordering
2021-02-09 07:48:22 -05:00
François Richard
62ed72ec4e
Allow comment deletion ( #224 )
...
* Allow comment deletion
* Add delete_changeset for comment, decrement comments count
* Add comment delete resolver test
* Don't use pipe on single function call
Co-authored-by: Simon Prévost <sprevost@mirego.com>
* Improve controller functions
* Run format
Co-authored-by: Simon Prévost <sprevost@mirego.com>
2021-01-27 08:25:42 -05:00
Simon Prévost
8f1e8786e5
Add WEBAPP_SKIP_SUBRESOURCE_INTEGRITY setting to remove integrity attributes on link and script tags
2020-12-02 07:58:29 -05:00
Simon Prévost
897719dd48
Fix duplicate translations on search, search reset and refactor box-shadow
2020-11-26 08:00:03 -05:00
Simon Prévost
c937a2ace1
Fix value_type not set for some parsers
2020-11-25 18:01:32 -05:00
Simon Prévost
704553e0dd
Fix lint
2020-11-25 07:53:48 -05:00
Simon Prévost
8e50afc874
Run format
2020-11-25 07:34:47 -05:00
Simon Prévost
2b649acc88
Fix gettext multiline value serializing
2020-11-25 07:34:47 -05:00
Simon Prévost
8c94168c0f
Fix translations scope
2020-11-25 07:34:47 -05:00
Simon Prévost
6e0c3e129a
Add Google Translate service with machine translations feature
2020-11-25 07:34:47 -05:00
Simon Prévost
3274fbb13d
Fix key separator for nested json key
2020-11-10 12:03:57 -05:00
Simon Prévost
e40fe4cb86
Add file comment section in translation edit form
2020-11-05 13:06:32 -05:00
Simon Prévost
83ebde9c9a
Fix tests
2020-10-20 21:27:26 -04:00
Simon Prévost
61661d438e
Fix elixir 1.11 config and pell config
2020-10-18 20:56:14 -04:00
Simon Prévost
6cd211ee83
Update elixir 1.11.0 and OTP 23
2020-10-09 07:46:58 -04:00
Simon Prévost
cd92e2f79a
Add batched sync/merge actions
2020-10-08 16:46:36 -04:00
Simon Prévost
de6cdd15a4
Add recent projects locally stored in projects list
2020-10-07 07:37:59 -04:00
Simon Prévost
23ed664569
Fix, format and service logo reuse
2020-09-30 08:09:12 -04:00
Simon Prévost
d2dbce9358
Add Logger metadata for current user and graphql operations
2020-09-30 07:38:19 -04:00
Simon Prévost
54b68840b0
Fix tests
2020-08-31 20:54:40 -04:00
Simon Prévost
3c5b5d2c6c
Refactor select and update deps
2020-08-29 18:06:27 -04:00
Simon Prévost
13fceebf22
Add RESX 2.0 format
2020-07-08 10:52:28 -04:00
Simon Prévost
67874cedbb
Add HTML form for html valueType translation
2020-07-02 20:54:47 -04:00
Simon Prévost
e0c0709c61
Update deps
2020-06-10 21:38:14 -04:00
Simon Prévost
19ab6a44f1
Add gleam library to implement type-safe linting module
2020-06-10 13:04:13 -04:00
Simon Prévost
2743d93409
Refactor review and translation UI
2020-06-10 13:02:47 -04:00
Simon Prévost
3a2bb5dd45
Replace custom gen stage event handling with oban to execute async tasks ( #187 )
2020-06-10 13:02:35 -04:00
Simon Prévost
b033294017
Add FirstLetterCase lint rule
2020-05-25 20:16:42 -04:00
Simon Prévost
5893a518b4
Add ping github event handler
...
Closes #178
2020-05-09 13:14:45 -04:00
Simon Prévost
e11088f6ec
Add version requirement filter fallback for version tag param ( #183 )
2020-05-08 08:47:45 -04:00
Simon Prévost
9cdd5626da
Fix parsed document as nil for other formats ( #184 )
2020-05-08 08:13:08 -04:00
Simon Prévost
7e7abcb9ee
Add version runtime tag in footer when served from the API ( #182 )
2020-05-08 07:50:53 -04:00
Adam Dobrawy
985d240ade
Update docs for "version" parameter of /export ( #172 )
2020-05-04 20:36:53 -04:00
Simon Prévost
416df5932e
Add page size on document to fix cli documents listing
2020-05-04 12:30:11 -04:00
romarickb
c6ee149163
Collaborator's email must be unique for a projet ( #169 )
...
* Collaborator's email must be unique for a projet. Can't add multiple time the same collaborator in a project
* Update priv/repo/migrations/20200430174230_unique_collaborator_email.exs
Co-authored-by: Rémi Prévost <remi@exomel.com>
Co-authored-by: Simon Prévost <sprevost@mirego.com>
Co-authored-by: Rémi Prévost <remi@exomel.com>
2020-05-01 09:18:58 -04:00
Simon Prévost
d2aa3c7c62
Fix input change event
2020-04-27 06:55:44 -04:00
Simon Prévost
9567db9b4d
Convert codebase to typescript and latest Ember ( #157 )
...
* Update eslint setup (#134 )
* Convert services (#136 )
* Convert login and logged-in routes (#137 )
* Convert project routes and controllers (#138 )
* Convert activities and comments routes (#140 )
* Convert project edit sub-routes and controllers (#139 )
* Convert files routes and controllers (#141 )
* Convert revision routes and controllers (#142 )
* Convert phoenix service (#143 )
* Convert translation routes and controllers (#144 )
* Convert versions routes and controllers (#145 )
* Convert JIPT routes and controllers (#146 )
* Convert Sass variables to CSS modules @value (#147 )
* Convert CSS variables and fix projects page components
* Fix a bunch of components
* Fix another bunch of components
* Update styles and missing global for powerselect
* Fix typings
* Fix typescript warnings
* Add typings for phoenix and file-saver vendor
* Fix github ci
Co-authored-by: Charles Demers <cdemers@mirego.com>
Co-authored-by: Charles Demers <charles.demers6@gmail.com>
2020-04-07 07:47:33 -04:00
Simon Prévost
c63243ce78
Rename original_file_name to document_path
2020-01-11 20:37:09 -05:00
Simon Prévost
d193f300bb
Remove dead code
2020-01-09 12:58:45 -05:00
Simon Prévost
bc6b349954
Fix document pagination with empty translations by using joins as select
2020-01-09 12:29:22 -05:00
Simon Prévost
8689caae7e
Update deps and fix activity item styles
2020-01-03 16:03:43 -05:00
Simon Prévost
1968150385
Update app.json and jsone dep to remove slash escaping
2019-12-16 18:46:05 -05:00
Simon Prévost
d7a778d22c
Fix revision language overwrite for sync/merge/export controller
2019-12-12 12:36:50 -05:00
Simon Prévost
7b3579cae7
Fix breaking graphql API
2019-12-12 12:36:50 -05:00
Simon Prévost
605509d1de
Use overridable revision slug/name in CLI
2019-12-12 12:36:50 -05:00
Simon Prévost
78231026d5
Add emoji customization for project
2019-12-12 12:36:50 -05:00
Simon Prévost
43092ce891
Update elixir deps
2019-12-12 12:36:49 -05:00
Simon Prévost
fb6259d9f5
Add tests
2019-12-12 12:36:49 -05:00
Simon Prévost
83c3d283d2
Correct language with variant for language tool
2019-12-12 12:36:49 -05:00
Simon Prévost
c2b02d2aca
Test
2019-12-12 12:36:49 -05:00
Simon Prévost
4236ca2cee
Add translation lint and spell check
2019-12-12 12:36:49 -05:00
Simon Prévost
8dbc5a4b1e
Add more tests
2019-08-27 22:06:07 -04:00
Simon Prévost
ea1ed4ed62
Add advanced filters on translations list
2019-08-27 21:19:44 -04:00
Olafur Arason
fa6ff35d39
Add support for msgctxt ( #118 )
2019-08-23 12:09:04 -04:00
Simon Prévost
b992ac5215
Fix gettext header serializer
2019-08-14 18:30:10 -04:00
Simon Prévost
26288c9a2e
Refactor readme
2019-07-31 21:15:15 -04:00
Simon Prévost
d2dd61131f
Upgrade elixir 1.9, use mix release, fix env var for auth
2019-07-30 07:31:01 -04:00
Simon Prévost
62569055bd
Fix webapp view rendering
2019-07-24 12:46:46 -04:00
Simon Prévost
39753e63e5
Fix CI
2019-07-22 13:21:53 -04:00
Simon Prévost
a9d4511863
wip docker
2019-07-18 17:13:24 -04:00
Simon Prévost
55c40bc617
Add jipt is conflicted style node and hide overlay settings
2019-06-17 20:45:59 -04:00
Simon Prévost
5a47ef85b4
Add document path update form in documents list
2019-06-16 10:59:34 -04:00
Simon Prévost
768a2fac3e
Add uberauth to handle authentication to allow multiple providers login (google, github and slack)
2019-05-20 21:45:25 -04:00
Simon Prévost
0f53caa197
Add config to enable dummy login on production to use in the demo deploy
2019-05-12 21:07:13 -04:00
Simon Prévost
60b8510485
Fix brittle unordered jipt translations
2019-05-12 20:37:24 -04:00
Simon Prévost
be674cc941
Add language override in UI
2019-05-12 20:28:59 -04:00
Simon Prévost
11732c5f30
Add language overrides in revision in schema
2019-05-09 19:04:11 -04:00
Simon Prévost
66605ca1a1
Remove duplication between slack and discord integration service
2019-05-09 17:39:12 -04:00
Simon Prévost
b314d0d12e
Add github service integration UI
2019-05-09 17:14:07 -04:00
amy null
93a4198ca3
Add Discord project integration ( #86 )
...
* Add basic Discord webhook support
* Add Discord integration tests
* Revert lockfiles
2019-05-09 17:11:24 -04:00
Simon Prévost
e1b1b106c6
Add GitHub webhooks integration to sync a project ( #85 )
...
* Add GitHub webhooks integration to sync a project
The webhook generates events that reads the repo’s config file (the same
config file used by accent-cli) and build "sync" and "add translations"
events in Accent.
It supports a default ref: you can specify to only
trigger the "sync" on the "release/production" branch. It also supports
automatic version sync. If you have a version in Accent that matches
your git tag, "sync" events will be generated for those versions,
without touching your current translations. This can be useful if you
use versions to freeze translations on your releases.
This commit only adds the API side of the feature. So while it’s not
user facing, if you want to test the feature, you can add a matching
"integrations" row in the database and setup your webhook in GitHub :)
* Add tests for integration scope
* Rename hook sync to hook update since the hook sync and add translations
* Order mix.exs deps
* Run formatter
* Fix credo
* Fix tests
* Move GitHub producer with the same shared code as the other producer, simple queue without back pressure
* Remove unused function
* Update event producer from gen stage queue broadcaster
* Add tests
2019-04-26 12:41:51 -04:00
Simon Prévost
1d300c308a
Add version handling in sync and add translations operations
2019-04-21 14:02:44 -04:00
Simon Prévost
9e1dbb9dbd
Replace number status code with atom
2019-04-21 14:02:44 -04:00
Simon Prévost
083645a546
Update icons
2019-04-07 16:28:15 -04:00
Simon Prévost
ae0df57dae
Add basic support for XLIFF 1.2 file format ( #79 )
...
![image](https://user-images.githubusercontent.com/464900/55203015-35c17980-51a0-11e9-8647-d91209c7b6de.png )
## Issue
📚 https://github.com/mirego/accent/issues/21
## Feature
This is a basic implementation of the XLIFF 1.2 format. This format is used heavily in a lot of translations related tool (and in XCode) so I may have missed some of the implementation details. But it’s a good start for someone who want to contribute to Accent 😉
## Refactor
This format is a bit trickier than other since it required the master language to export the targets. We needed to refactor some module to use the master language in the serialization process. Also, not needed but cleaner, we wrap the document’s key `top_of_the_file_comment` and `header` inside a new struct `Language.Document`. This will become handy if we ever need to add an attribute to the document OR if we add a different attribute to the serialization input.
## Next steps
This format includes 2 new dependencies to handle XML encode and decode. _Why not use the same XML library used for the XML Android format?_ Because… \*drum roll\* The `<source>` XML tag when encoded by the `mochiweb_html` module is a self closing tag (per the HTML spec) 🥇
Since those 2 new deps are required for the XLIFF format and can pretty print XML, we should use them _instead of `mochiweb`_ 🎉
2019-03-31 16:16:20 -04:00
Simon Prévost
5fd55241c9
Fix docker setup with bad libcrypto from alpine 3.9
2019-03-10 21:16:23 -04:00
Simon Prévost
2dd1ea1b53
Fix tests
2019-03-09 22:46:07 -05:00
Simon Prévost
a3e96e4236
Add just in place translation kit to translate directly in the project’s app
2019-03-09 22:46:07 -05:00
Simon Prévost
57b8559feb
Refactor UI
2019-03-09 22:46:07 -05:00
Simon Prévost
fa55c9a543
Update deps and elixir/erlang version
2019-03-03 14:56:36 -05:00
Simon Prévost
835d32285c
Fix placeholders inclusion in previous translation mapping
2019-01-22 08:09:45 -05:00
Simon Prévost
6316fc4ec3
Add halt in webapp controller when rendering maintenance
2019-01-11 14:19:53 -05:00
Simon Prévost
3cd60023a4
Fix filename parsing when using document path param and fix export filename parsing
2019-01-11 10:28:36 -05:00
Simon Prévost
a5454cf4ad
Add maintenance page when ember build runs in the background on deploy
2019-01-11 09:47:14 -05:00
Simon Prévost
aed5793dab
Add distillery and docker setup
2019-01-11 09:47:14 -05:00
Simon Prévost
0ba4d0474d
wip
2019-01-09 08:01:19 -05:00
Simon Prévost
9a9b50e0d8
Add more tests and refactor scripts and endpoint
2019-01-06 22:41:53 -05:00
Simon Prévost
2a8512be87
Fix styles and sync type option
2018-12-22 14:37:34 -05:00
Simon Prévost
e0b24790e8
Refactor codes and UI with new standard
2018-12-12 20:05:57 -05:00
Simon Prévost
c6dbc084e1
Rename interpolations to placeholders
2018-12-12 19:57:34 -05:00
Benoit Ducharme
8ead83b52a
Add interpolations to translation forms
...
Interpolations are strings automatically marked (based on the format) to
be replaced by the application at runtime. Those strings are meant to be
left unmodified and not translatable. The UI reflects that. The
interpolations shown to the user is always the master translation’s
ones. This is to clearly show on not translated content that maybe
interpolations uploaded after the correction were removed or added.
2018-12-12 19:57:34 -05:00
Simon Prévost
dbbadab99e
Add Credo.Check.Readability.AliasOrder to credo config
2018-12-08 19:57:20 -05:00
Simon Prévost
53a0e5c8ac
Refactor and adds credo env var check
2018-12-08 16:43:06 -05:00
Simon Prévost
65a41aaf88
Refactor
2018-12-08 16:06:55 -05:00
Simon Prévost
531caf156a
Fix last synced at type for project
2018-12-08 15:21:42 -05:00
Simon Prévost
b373646e6c
Replace Poison with Jason in app code
2018-12-08 15:21:42 -05:00
Simon Prévost
a4a68b8862
Update sentry to 7.0 to remove peer Plug.Conn error
2018-12-08 15:21:42 -05:00
Simon Prévost
b360e50339
Update Ecto and Phoenix deps
2018-12-08 15:21:42 -05:00
Simon Prévost
da82db5883
Fix credo
2018-12-08 15:12:45 -05:00
Simon Prévost
2f8c8a5522
Add sync type passive as a comparer in sync operation
...
The "sync_type" option can now be passed to the sync request to have a
different way to handle operations.
The new "passive" option will ignore all actions but the `new`, `renew`
and `remove`. It will ensure that when uploading a file, no translations
or master strings can be overwritten. It behaves the same way as the
existing merge_type "passive".
2018-12-08 15:12:45 -05:00
Simon Prévost
91114ba0dc
Add Go i18n JSON document format
2018-09-10 07:54:21 -04:00
Simon Prévost
a4025cd0cf
Add plural forms support for gettext serializer
2018-07-06 16:33:34 -04:00
Nicolas Boisvert
be950f5f0e
laravel_php - Redone job in new branch
2018-06-08 16:59:28 -04:00
Simon Prévost
78d8c90ad9
Refactor langue tests setup and naming
2018-05-14 08:27:26 -04:00
Łukasz Jan Niemier
b3882e7bc5
Add support for CSV formatter
...
Issue #22
2018-05-11 07:34:04 -04:00
Łukasz Jan Niemier
fd1499ae52
Count translations in DB instead
...
Old way required 2 DB queries, where one would be sufficient.
2018-05-11 07:32:46 -04:00
Łukasz Jan Niemier
22b70541c0
Use inner joins instead of left joins
...
Inner join is default join for Ecto for valid reasons, it helps DB
optimizer to reduce amount of tuples fetched from storage.
2018-05-11 07:32:46 -04:00
Łukasz Jan Niemier
d868bff0ad
Write tests for new functionalities
2018-05-11 07:32:25 -04:00
Łukasz Jan Niemier
a40e6a2e0d
Do not assume that there will be value in language
...
Closes #26
2018-05-11 07:32:25 -04:00
Łukasz Jan Niemier
d9c733c0a3
Keep newlines in translations
...
Closes #28
2018-05-11 07:32:25 -04:00
Simon Prévost
ae6043e292
Add plural and locked state for translations
2018-04-27 08:49:50 -04:00
Simon Prévost
6fd43e95cd
Remove useless updated_at in Repo.update and invert conflicted and active count query
2018-04-24 20:05:24 -04:00
Simon Prévost
53d96bc6a6
Add float value type
2018-04-24 20:03:39 -04:00
Simon Prévost
d420bd0fbe
Refactor operation and translation value_type to always have a value and handle string/empty/null etc
2018-04-23 21:43:15 -04:00
Simon Prévost
d8c20f5de7
Use Ecto embedded schema to store previous translation on operation
2018-04-13 13:43:52 -04:00
Simon Prévost
c502ce2e4e
Fix mass insert of operations that raised a postgresql error on max parameters size
2018-04-13 13:43:38 -04:00
Simon Prévost
d9711d5973
Add tests for hook consumers
2018-04-11 06:02:16 -04:00
Simon Prévost
0bb0b01171
Add email abilities restriction capabilities with RESTRICTED_DOMAIN env var
2018-04-11 06:01:00 -04:00
Simon Prévost
e0afd6806d
Add tests for error view module
2018-04-09 20:52:22 -04:00