ruby-lokalise-api 4.5.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +5 -3
  3. data/lib/ruby_lokalise_api/base_request.rb +24 -0
  4. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/client.rb +25 -26
  5. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/base.rb +10 -10
  6. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/branch.rb +1 -1
  7. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/contributor.rb +1 -1
  8. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/custom_translation_status.rb +1 -1
  9. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/file.rb +1 -1
  10. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/key.rb +2 -2
  11. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/key_comment.rb +1 -1
  12. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/order.rb +1 -1
  13. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/payment_card.rb +1 -1
  14. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/project.rb +1 -1
  15. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/project_comment.rb +1 -1
  16. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/project_language.rb +1 -1
  17. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/queued_process.rb +1 -1
  18. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/screenshot.rb +1 -1
  19. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/segment.rb +1 -1
  20. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/snapshot.rb +1 -1
  21. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/system_language.rb +1 -1
  22. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/task.rb +1 -1
  23. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/team.rb +1 -1
  24. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/team_user.rb +1 -1
  25. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/team_user_group.rb +1 -1
  26. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/translation.rb +1 -1
  27. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/translation_provider.rb +1 -1
  28. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/webhook.rb +1 -1
  29. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/connection.rb +4 -3
  30. data/lib/ruby_lokalise_api/data/attributes.yml +235 -0
  31. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/error.rb +15 -15
  32. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/json_handler.rb +1 -1
  33. data/lib/ruby_lokalise_api/oauth2/auth.rb +62 -0
  34. data/lib/ruby_lokalise_api/oauth2/connection.rb +25 -0
  35. data/lib/ruby_lokalise_api/oauth2/request.rb +23 -0
  36. data/lib/{ruby-lokalise-api/oauth_client.rb → ruby_lokalise_api/oauth2_client.rb} +2 -2
  37. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/request.rb +5 -16
  38. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/base.rb +8 -8
  39. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/branch.rb +1 -1
  40. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/contributor.rb +1 -1
  41. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/custom_translation_status.rb +1 -1
  42. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/file.rb +2 -2
  43. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/key.rb +1 -1
  44. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/key_comment.rb +1 -1
  45. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/order.rb +1 -1
  46. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/payment_card.rb +1 -1
  47. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/project.rb +1 -1
  48. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/project_comment.rb +1 -1
  49. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/project_language.rb +1 -1
  50. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/queued_process.rb +1 -1
  51. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/screenshot.rb +1 -1
  52. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/segment.rb +1 -1
  53. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/snapshot.rb +2 -2
  54. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/system_language.rb +1 -1
  55. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/task.rb +1 -1
  56. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/team.rb +1 -1
  57. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/team_user.rb +1 -1
  58. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/team_user_billing_details.rb +1 -1
  59. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/team_user_group.rb +1 -1
  60. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/translation.rb +1 -1
  61. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/translation_provider.rb +1 -1
  62. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/webhook.rb +1 -1
  63. data/lib/ruby_lokalise_api/rest/branches.rb +69 -0
  64. data/lib/ruby_lokalise_api/rest/comments.rb +61 -0
  65. data/lib/ruby_lokalise_api/rest/contributors.rb +58 -0
  66. data/lib/ruby_lokalise_api/rest/custom_translation_statuses.rb +67 -0
  67. data/lib/ruby_lokalise_api/rest/files.rb +38 -0
  68. data/lib/ruby_lokalise_api/rest/keys.rb +79 -0
  69. data/lib/ruby_lokalise_api/rest/languages.rb +67 -0
  70. data/lib/ruby_lokalise_api/rest/orders.rb +37 -0
  71. data/lib/ruby_lokalise_api/rest/payment_cards.rb +43 -0
  72. data/lib/ruby_lokalise_api/rest/projects.rb +62 -0
  73. data/lib/ruby_lokalise_api/rest/queued_processes.rb +28 -0
  74. data/lib/ruby_lokalise_api/rest/screenshots.rb +58 -0
  75. data/lib/ruby_lokalise_api/rest/segments.rb +45 -0
  76. data/lib/ruby_lokalise_api/rest/snapshots.rb +47 -0
  77. data/lib/ruby_lokalise_api/rest/tasks.rb +58 -0
  78. data/lib/ruby_lokalise_api/rest/team_user_billing_details.rb +36 -0
  79. data/lib/ruby_lokalise_api/rest/team_user_groups.rb +109 -0
  80. data/lib/ruby_lokalise_api/rest/team_users.rb +48 -0
  81. data/lib/ruby_lokalise_api/rest/teams.rb +16 -0
  82. data/lib/ruby_lokalise_api/rest/translation_providers.rb +27 -0
  83. data/lib/ruby_lokalise_api/rest/translations.rb +39 -0
  84. data/lib/ruby_lokalise_api/rest/webhooks.rb +69 -0
  85. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/utils/attribute_helpers.rb +7 -7
  86. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/utils/endpoint_helpers.rb +1 -1
  87. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/utils/string_utils.rb +1 -1
  88. data/lib/ruby_lokalise_api/version.rb +5 -0
  89. data/lib/ruby_lokalise_api.rb +50 -0
  90. data/ruby-lokalise-api.gemspec +8 -7
  91. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/branches_spec.rb +13 -13
  92. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/comments_spec.rb +7 -7
  93. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/contributors_spec.rb +11 -11
  94. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/custom_translation_statuses_spec.rb +7 -7
  95. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/files_spec.rb +2 -2
  96. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/keys_spec.rb +15 -15
  97. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/languages_spec.rb +6 -6
  98. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/orders_spec.rb +1 -1
  99. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/payment_cards_spec.rb +7 -7
  100. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/projects_spec.rb +24 -11
  101. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/queued_processes_spec.rb +1 -1
  102. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/screenshots_spec.rb +5 -5
  103. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/segments_spec.rb +4 -4
  104. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/snapshots_spec.rb +9 -9
  105. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/tasks_spec.rb +14 -14
  106. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/team_user_billing_details_spec.rb +1 -1
  107. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/team_user_groups_spec.rb +7 -7
  108. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/team_users_spec.rb +4 -4
  109. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/teams_spec.rb +1 -1
  110. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/translation_providers_spec.rb +2 -2
  111. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/translations_spec.rb +11 -11
  112. data/spec/lib/{ruby-lokalise-api/rest → ruby_lokalise_api/client}/webhooks_spec.rb +2 -2
  113. data/spec/lib/ruby_lokalise_api/connection_spec.rb +68 -0
  114. data/spec/lib/{ruby-lokalise-api → ruby_lokalise_api}/custom_json_parser_spec.rb +3 -3
  115. data/spec/lib/{ruby-lokalise-api → ruby_lokalise_api}/error_spec.rb +10 -10
  116. data/spec/lib/ruby_lokalise_api/oauth2/auth_spec.rb +73 -0
  117. data/spec/lib/ruby_lokalise_api_spec.rb +47 -0
  118. data/spec/spec_helper.rb +1 -1
  119. data/spec/support/test_client.rb +7 -3
  120. data/spec/support/vcr.rb +5 -0
  121. metadata +168 -148
  122. data/lib/ruby-lokalise-api/data/attributes.json +0 -259
  123. data/lib/ruby-lokalise-api/rest/branches.rb +0 -67
  124. data/lib/ruby-lokalise-api/rest/comments.rb +0 -59
  125. data/lib/ruby-lokalise-api/rest/contributors.rb +0 -56
  126. data/lib/ruby-lokalise-api/rest/custom_translation_statuses.rb +0 -65
  127. data/lib/ruby-lokalise-api/rest/files.rb +0 -36
  128. data/lib/ruby-lokalise-api/rest/keys.rb +0 -77
  129. data/lib/ruby-lokalise-api/rest/languages.rb +0 -65
  130. data/lib/ruby-lokalise-api/rest/orders.rb +0 -35
  131. data/lib/ruby-lokalise-api/rest/payment_cards.rb +0 -41
  132. data/lib/ruby-lokalise-api/rest/projects.rb +0 -60
  133. data/lib/ruby-lokalise-api/rest/queued_processes.rb +0 -26
  134. data/lib/ruby-lokalise-api/rest/screenshots.rb +0 -56
  135. data/lib/ruby-lokalise-api/rest/segments.rb +0 -43
  136. data/lib/ruby-lokalise-api/rest/snapshots.rb +0 -45
  137. data/lib/ruby-lokalise-api/rest/tasks.rb +0 -56
  138. data/lib/ruby-lokalise-api/rest/team_user_billing_details.rb +0 -34
  139. data/lib/ruby-lokalise-api/rest/team_user_group.rb +0 -107
  140. data/lib/ruby-lokalise-api/rest/team_users.rb +0 -46
  141. data/lib/ruby-lokalise-api/rest/teams.rb +0 -14
  142. data/lib/ruby-lokalise-api/rest/translation_providers.rb +0 -25
  143. data/lib/ruby-lokalise-api/rest/translations.rb +0 -37
  144. data/lib/ruby-lokalise-api/rest/webhooks.rb +0 -67
  145. data/lib/ruby-lokalise-api/version.rb +0 -5
  146. data/lib/ruby-lokalise-api.rb +0 -101
  147. data/spec/lib/ruby-lokalise-api/connection_spec.rb +0 -89
  148. data/spec/lib/ruby-lokalise-api_spec.rb +0 -54
@@ -1,43 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- class Client
5
- # Returns all segments for the given key and language ISO code
6
- #
7
- # @see https://app.lokalise.com/api2docs/curl/#transition-list-all-segments-for-key-language-get
8
- # @return [Lokalise::Collection::Segments<Lokalise::Resources::Segment>]
9
- # @param project_id [String]
10
- # @param key_id [String, Integer]
11
- # @param lang_iso [String]
12
- # @param params [Hash]
13
- def segments(project_id, key_id, lang_iso, params = {})
14
- c_r Lokalise::Collections::Segment, :all, [project_id, key_id, lang_iso], params
15
- end
16
-
17
- # Returns a segment under a given number for the given key and language ISO code
18
- #
19
- # @see https://app.lokalise.com/api2docs/curl/#transition-retrieve-a-segment-for-key-language-get
20
- # @return [Lokalise::Resources::Segment]
21
- # @param project_id [String]
22
- # @param key_id [String, Integer]
23
- # @param lang_iso [String]
24
- # @params segment_number [Integer, String]
25
- # @param params [Hash]
26
- def segment(project_id, key_id, lang_iso, segment_number, params = {})
27
- c_r Lokalise::Resources::Segment, :find, [project_id, key_id, lang_iso, segment_number], params
28
- end
29
-
30
- # Updates a segment under a given number for the given key and language ISO code
31
- #
32
- # @see https://app.lokalise.com/api2docs/curl/#transition-update-a-segment-post
33
- # @return [Lokalise::Resources::Segment]
34
- # @param project_id [String]
35
- # @param key_id [String, Integer]
36
- # @param lang_iso [String]
37
- # @params segment_number [Integer, String]
38
- # @param params [Hash]
39
- def update_segment(project_id, key_id, lang_iso, segment_number, params = {})
40
- c_r Lokalise::Resources::Segment, :update, [project_id, key_id, lang_iso, segment_number], params
41
- end
42
- end
43
- end
@@ -1,45 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- class Client
5
- # Returns all snapshots for the given project
6
- #
7
- # @see https://app.lokalise.com/api2docs/curl/#transition-list-all-snapshots-get
8
- # @return [Lokalise::Collection::Snapshot<Lokalise::Resources::Snapshot>]
9
- # @param project_id [String]
10
- # @param params [Hash]
11
- def snapshots(project_id, params = {})
12
- c_r Lokalise::Collections::Snapshot, :all, project_id, params
13
- end
14
-
15
- # Creates snapshot for the given project
16
- #
17
- # @see https://app.lokalise.com/api2docs/curl/#transition-create-a-snapshot-post
18
- # @return [Lokalise::Resources::Snapshot]
19
- # @param project_id [String]
20
- # @param params [Hash]
21
- def create_snapshot(project_id, params = {})
22
- c_r Lokalise::Resources::Snapshot, :create, project_id, params
23
- end
24
-
25
- # Restore project from the given snapshot by producing project's copy
26
- #
27
- # @see https://app.lokalise.com/api2docs/curl/#transition-restore-a-snapshot-post
28
- # @return [Lokalise::Resources::Project]
29
- # @param project_id [String]
30
- # @param snapshot_id [String, Integer]
31
- def restore_snapshot(project_id, snapshot_id)
32
- c_r Lokalise::Resources::Snapshot, :restore, [project_id, snapshot_id]
33
- end
34
-
35
- # Deletes snapshot
36
- #
37
- # @see https://app.lokalise.com/api2docs/curl/#transition-delete-a-snapshot-delete
38
- # @return [Hash]
39
- # @param project_id [String]
40
- # @param snapshot_id [String, Integer]
41
- def destroy_snapshot(project_id, snapshot_id)
42
- c_r Lokalise::Resources::Snapshot, :destroy, [project_id, snapshot_id]
43
- end
44
- end
45
- end
@@ -1,56 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- class Client
5
- # Returns all tasks for the given project
6
- #
7
- # @see https://app.lokalise.com/api2docs/curl/#transition-list-all-tasks-get
8
- # @return [Lokalise::Collection::Task<Lokalise::Resources::Task>]
9
- # @param project_id [String]
10
- # @param params [Hash]
11
- def tasks(project_id, params = {})
12
- c_r Lokalise::Collections::Task, :all, project_id, params
13
- end
14
-
15
- # Returns a single task for the given project
16
- #
17
- # @see https://app.lokalise.com/api2docs/curl/#transition-retrieve-a-task-get
18
- # @return [Lokalise::Resources::Task]
19
- # @param project_id [String]
20
- # @param task_id [String, Integer]
21
- def task(project_id, task_id)
22
- c_r Lokalise::Resources::Task, :find, [project_id, task_id]
23
- end
24
-
25
- # Creates task for the given project
26
- #
27
- # @see https://app.lokalise.com/api2docs/curl/#transition-create-a-task-post
28
- # @return [Lokalise::Resources::Task]
29
- # @param project_id [String]
30
- # @param params [Hash]
31
- def create_task(project_id, params)
32
- c_r Lokalise::Resources::Task, :create, project_id, params
33
- end
34
-
35
- # Updates task for the given project
36
- #
37
- # @see https://app.lokalise.com/api2docs/curl/#transition-update-a-task-put
38
- # @return [Lokalise::Resources::Task]
39
- # @param project_id [String]
40
- # @param task_id [String, Integer]
41
- # @param params [Hash]
42
- def update_task(project_id, task_id, params = {})
43
- c_r Lokalise::Resources::Task, :update, [project_id, task_id], params
44
- end
45
-
46
- # Deletes task for the given project
47
- #
48
- # @see https://app.lokalise.com/api2docs/curl/#transition-delete-a-task-delete
49
- # @return [Hash]
50
- # @param project_id [String]
51
- # @param task_id [String, Integer]
52
- def destroy_task(project_id, task_id)
53
- c_r Lokalise::Resources::Task, :destroy, [project_id, task_id]
54
- end
55
- end
56
- end
@@ -1,34 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- class Client
5
- # Returns team user billing details
6
- #
7
- # @see https://app.lokalise.com/api2docs/curl/#transition-retrieve-team-user-billing-details-get
8
- # @return [Lokalise::Resources::TeamUserBillingDetails]
9
- # @param team_id [String]
10
- def team_user_billing_details(team_id)
11
- c_r Lokalise::Resources::TeamUserBillingDetails, :find, team_id
12
- end
13
-
14
- # Creates team user billing details
15
- #
16
- # @see https://app.lokalise.com/api2docs/curl/#transition-create-team-user-billing-details-post
17
- # @return [Lokalise::Resources::TeamUserBillingDetails]
18
- # @param team_id [String]
19
- # @param params [Hash]
20
- def create_team_user_billing_details(team_id, params)
21
- c_r Lokalise::Resources::TeamUserBillingDetails, :create, team_id, params
22
- end
23
-
24
- # Updates team user billing details
25
- #
26
- # @see https://app.lokalise.com/api2docs/curl/#transition-create-team-user-billing-details-post
27
- # @return [Lokalise::Resources::TeamUserBillingDetails]
28
- # @param team_id [String]
29
- # @param params [Hash]
30
- def update_team_user_billing_details(team_id, params)
31
- c_r Lokalise::Resources::TeamUserBillingDetails, :update, team_id, params
32
- end
33
- end
34
- end
@@ -1,107 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- class Client
5
- # Returns all team user groups for the given team
6
- #
7
- # @see https://lokalise.co/api2docs/curl/#transition-list-all-groups-get
8
- # @return [Lokalise::Collection::TeamUserGroup<Lokalise::Resources::TeamUserGroup>]
9
- # @param team_id [String]
10
- # @param params [Hash]
11
- def team_user_groups(team_id, params = {})
12
- c_r Lokalise::Collections::TeamUserGroup, :all, team_id, params
13
- end
14
-
15
- # Returns team user from the given team
16
- #
17
- # @see https://lokalise.co/api2docs/curl/#transition-retrieve-a-group-get
18
- # @return [Lokalise::Resources::TeamUserGroup]
19
- # @param team_id [String]
20
- # @param group_id [String, Integer]
21
- def team_user_group(team_id, group_id)
22
- c_r Lokalise::Resources::TeamUserGroup, :find, [team_id, group_id]
23
- end
24
-
25
- # Creates team user group
26
- #
27
- # @see https://lokalise.co/api2docs/curl/#resource-team-user-groups
28
- # @return [Lokalise::Resources::TeamUserGroup]
29
- # @param params [Hash]
30
- def create_team_user_group(team_id, params)
31
- c_r Lokalise::Resources::TeamUserGroup, :create, team_id, params
32
- end
33
-
34
- # Updates team user group for the given team
35
- #
36
- # @see https://lokalise.co/api2docs/curl/#transition-update-a-group-put
37
- # @return [Lokalise::Resources::TeamUserGroup]
38
- # @param team_id [String]
39
- # @param group_id [String, Integer]
40
- # @param params [Hash]
41
- def update_team_user_group(team_id, group_id, params)
42
- c_r Lokalise::Resources::TeamUserGroup, :update, [team_id, group_id], params
43
- end
44
-
45
- # Deletes team user group from the given team
46
- #
47
- # @see https://lokalise.co/api2docs/curl/#transition-delete-a-group-delete
48
- # @return [Lokalise::Resources::TeamUserGroup]
49
- # @param team_id [String]
50
- # @param group_id [String, Integer]
51
- def destroy_team_user_group(team_id, group_id)
52
- c_r Lokalise::Resources::TeamUserGroup, :destroy, [team_id, group_id]
53
- end
54
-
55
- # Adds projects to the given group
56
- #
57
- # @see https://lokalise.co/api2docs/curl/#transition-add-projects-to-group-put
58
- # @return [Lokalise::Resources::TeamUserGroup]
59
- # @param team_id [String]
60
- # @param group_id [String, Integer]
61
- # @param project_ids [String, Integer, Array<String>, Array<Integer>]
62
- def add_projects_to_group(team_id, group_id, project_ids)
63
- c_r Lokalise::Resources::TeamUserGroup, :update,
64
- [team_id, group_id, 'projects', 'add'],
65
- project_ids, :projects, [team_id, group_id]
66
- end
67
-
68
- # Removes projects from the given group
69
- #
70
- # @see https://lokalise.co/api2docs/curl/#transition-remove-projects-from-group-put
71
- # @return [Lokalise::Resources::TeamUserGroup]
72
- # @param team_id [String]
73
- # @param group_id [String, Integer]
74
- # @param project_ids [String, Integer, Array<String>, Array<Integer>]
75
- def remove_projects_from_group(team_id, group_id, project_ids)
76
- c_r Lokalise::Resources::TeamUserGroup, :update,
77
- [team_id, group_id, 'projects', 'remove'],
78
- project_ids, :projects, [team_id, group_id]
79
- end
80
-
81
- # Adds users to the given group
82
- #
83
- # @see https://lokalise.co/api2docs/curl/#transition-add-members-to-group-put
84
- # @return [Lokalise::Resources::TeamUserGroup]
85
- # @param team_id [String]
86
- # @param group_id [String, Integer]
87
- # @param users_ids [String, Integer, Array<String>, Array<Integer>]
88
- def add_users_to_group(team_id, group_id, users_ids)
89
- c_r Lokalise::Resources::TeamUserGroup, :update,
90
- [team_id, group_id, 'members', 'add'],
91
- users_ids, :users, [team_id, group_id]
92
- end
93
-
94
- # Removes users from the given group
95
- #
96
- # @see https://lokalise.co/api2docs/curl/#transition-remove-members-from-group-put
97
- # @return [Lokalise::Resources::TeamUserGroup]
98
- # @param team_id [String]
99
- # @param group_id [String, Integer]
100
- # @param users_ids [String, Integer, Array<String>, Array<Integer>]
101
- def remove_users_from_group(team_id, group_id, users_ids)
102
- c_r Lokalise::Resources::TeamUserGroup, :update,
103
- [team_id, group_id, 'members', 'remove'],
104
- users_ids, :users, [team_id, group_id]
105
- end
106
- end
107
- end
@@ -1,46 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- class Client
5
- # Returns all team users for the given team
6
- #
7
- # @see https://app.lokalise.com/api2docs/curl/#transition-list-all-team-users-get
8
- # @return [Lokalise::Collection::TeamUser<Lokalise::Resources::TeamUser>]
9
- # @param team_id [String]
10
- # @param params [Hash]
11
- def team_users(team_id, params = {})
12
- c_r Lokalise::Collections::TeamUser, :all, team_id, params
13
- end
14
-
15
- # Returns team user from the given team
16
- #
17
- # @see https://app.lokalise.com/api2docs/curl/#transition-retrieve-a-team-user-get
18
- # @return [Lokalise::Resources::TeamUser]
19
- # @param team_id [String]
20
- # @param user_id [String, Integer]
21
- def team_user(team_id, user_id)
22
- c_r Lokalise::Resources::TeamUser, :find, [team_id, user_id]
23
- end
24
-
25
- # Updates team user for the given team
26
- #
27
- # @see https://app.lokalise.com/api2docs/curl/#transition-update-a-team-user-put
28
- # @return [Lokalise::Resources::TeamUser]
29
- # @param team_id [String]
30
- # @param user_id [String, Integer]
31
- # @param params [Hash]
32
- def update_team_user(team_id, user_id, params)
33
- c_r Lokalise::Resources::TeamUser, :update, [team_id, user_id], params
34
- end
35
-
36
- # Deletes team user from the given team
37
- #
38
- # @see https://app.lokalise.com/api2docs/curl/#transition-delete-a-team-user-delete
39
- # @return [Lokalise::Resources::TeamUser]
40
- # @param team_id [String]
41
- # @param user_id [String, Integer]
42
- def destroy_team_user(team_id, user_id)
43
- c_r Lokalise::Resources::TeamUser, :destroy, [team_id, user_id]
44
- end
45
- end
46
- end
@@ -1,14 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- class Client
5
- # Returns all teams available to the user
6
- #
7
- # @see https://app.lokalise.com/api2docs/curl/#transition-list-all-teams-get
8
- # @return [Lokalise::Collection::Team<Lokalise::Resources::Team>]
9
- # @param params [Hash]
10
- def teams(params = {})
11
- c_r Lokalise::Collections::Team, :all, nil, params
12
- end
13
- end
14
- end
@@ -1,25 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- class Client
5
- # Returns all translation providers for the given team
6
- #
7
- # @see https://app.lokalise.com/api2docs/curl/#transition-list-all-providers-get
8
- # @return [Lokalise::Collection::TranslationProvider<Lokalise::Resources::TranslationProvider>]
9
- # @param team_id [String]
10
- # @param params [Hash]
11
- def translation_providers(team_id, params = {})
12
- c_r Lokalise::Collections::TranslationProvider, :all, team_id, params
13
- end
14
-
15
- # Returns a single translation provider for the given team
16
- #
17
- # @see https://app.lokalise.com/api2docs/curl/#transition-retrieve-a-provider-get
18
- # @return [Lokalise::Resources::TranslationProvider]
19
- # @param team_id [String]
20
- # @param provider_id [String, Integer]
21
- def translation_provider(team_id, provider_id)
22
- c_r Lokalise::Resources::TranslationProvider, :find, [team_id, provider_id]
23
- end
24
- end
25
- end
@@ -1,37 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- class Client
5
- # Returns all translations for the given project (ungrouped)
6
- #
7
- # @see https://app.lokalise.com/api2docs/curl/#transition-list-all-translations-get
8
- # @return [Lokalise::Collection::Translation<Lokalise::Resources::Translation>]
9
- # @param project_id [String]
10
- # @param params [Hash]
11
- def translations(project_id, params = {})
12
- c_r Lokalise::Collections::Translation, :all, project_id, params
13
- end
14
-
15
- # Returns translation of the given project
16
- #
17
- # @see https://app.lokalise.com/api2docs/curl/#transition-retrieve-a-translation-get
18
- # @return [Lokalise::Resources::Translation]
19
- # @param project_id [String]
20
- # @param translation_id [String, Integer]
21
- # @param params [Hash]
22
- def translation(project_id, translation_id, params = {})
23
- c_r Lokalise::Resources::Translation, :find, [project_id, translation_id], params
24
- end
25
-
26
- # Updates translation of the given project
27
- #
28
- # @see https://app.lokalise.com/api2docs/curl/#transition-update-a-translation-put
29
- # @return [Lokalise::Resources::Translation]
30
- # @param project_id [String]
31
- # @param translation_id [String, Integer]
32
- # @param params [Hash]
33
- def update_translation(project_id, translation_id, params)
34
- c_r Lokalise::Resources::Translation, :update, [project_id, translation_id], params
35
- end
36
- end
37
- end
@@ -1,67 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- class Client
5
- # Returns all webhooks for the given project
6
- #
7
- # @see https://app.lokalise.com/api2docs/curl/#transition-list-all-webhooks-get
8
- # @return [Lokalise::Collection::Webhook<Lokalise::Resources::Webhook>]
9
- # @param project_id [String]
10
- # @param params [Hash]
11
- def webhooks(project_id, params = {})
12
- c_r Lokalise::Collections::Webhook, :all, project_id, params
13
- end
14
-
15
- # Returns a single webhook for the given project
16
- #
17
- # @see https://app.lokalise.com/api2docs/curl/#transition-retrieve-a-webhook-get
18
- # @return [Lokalise::Resources::Webhook]
19
- # @param project_id [String]
20
- # @param webhook_id [String, Integer]
21
- def webhook(project_id, webhook_id)
22
- c_r Lokalise::Resources::Webhook, :find, [project_id, webhook_id]
23
- end
24
-
25
- # Creates webhook for the given project
26
- #
27
- # @see https://app.lokalise.com/api2docs/curl/#transition-create-a-webhook-post
28
- # @return [Lokalise::Resources::Webhook]
29
- # @param project_id [String]
30
- # @param params [Hash]
31
- def create_webhook(project_id, params)
32
- c_r Lokalise::Resources::Webhook, :create, project_id, params
33
- end
34
-
35
- # Updates webhook for the given project
36
- #
37
- # @see https://app.lokalise.com/api2docs/curl/#transition-update-a-webhook-put
38
- # @return [Lokalise::Resources::Webhook]
39
- # @param project_id [String]
40
- # @param webhook_id [String, Integer]
41
- # @param params [Hash]
42
- def update_webhook(project_id, webhook_id, params = {})
43
- c_r Lokalise::Resources::Webhook, :update, [project_id, webhook_id], params
44
- end
45
-
46
- # Deletes webhook for the given project
47
- #
48
- # @see https://app.lokalise.com/api2docs/curl/#transition-delete-a-webhook-delete
49
- # @return [Hash]
50
- # @param project_id [String]
51
- # @param webhook_id [String, Integer]
52
- def destroy_webhook(project_id, webhook_id)
53
- c_r Lokalise::Resources::Webhook, :destroy, [project_id, webhook_id]
54
- end
55
-
56
- # Regenerates secret for the given webhook
57
- #
58
- # @see https://lokalise.com/api2docs/curl/#transition-regenerate-a-webhook-secret-patch
59
- # @return [Hash]
60
- # @param project_id [String]
61
- # @param webhook_id [String, Integer]
62
- def regenerate_webhook_secret(project_id, webhook_id)
63
- c_r Lokalise::Resources::Webhook, :regenerate_secret,
64
- [project_id, webhook_id, 'secret', 'regenerate']
65
- end
66
- end
67
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Lokalise
4
- VERSION = '4.5.0'
5
- end
@@ -1,101 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'faraday'
4
- require 'faraday_middleware'
5
- require 'yaml'
6
- require 'addressable'
7
-
8
- require 'ruby-lokalise-api/version'
9
- require 'ruby-lokalise-api/json_handler'
10
- require 'ruby-lokalise-api/connection'
11
- require 'ruby-lokalise-api/request'
12
- require 'ruby-lokalise-api/error'
13
- require 'ruby-lokalise-api/utils/string_utils'
14
- require 'ruby-lokalise-api/utils/attribute_helpers'
15
- require 'ruby-lokalise-api/utils/endpoint_helpers'
16
-
17
- require 'ruby-lokalise-api/resources/base'
18
- require 'ruby-lokalise-api/resources/branch'
19
- require 'ruby-lokalise-api/resources/project'
20
- require 'ruby-lokalise-api/resources/project_language'
21
- require 'ruby-lokalise-api/resources/queued_process'
22
- require 'ruby-lokalise-api/resources/key_comment'
23
- require 'ruby-lokalise-api/resources/contributor'
24
- require 'ruby-lokalise-api/resources/file'
25
- require 'ruby-lokalise-api/resources/translation'
26
- require 'ruby-lokalise-api/resources/team_user'
27
- require 'ruby-lokalise-api/resources/task'
28
- require 'ruby-lokalise-api/resources/snapshot'
29
- require 'ruby-lokalise-api/resources/screenshot'
30
- require 'ruby-lokalise-api/resources/key'
31
- require 'ruby-lokalise-api/resources/project_comment'
32
- require 'ruby-lokalise-api/resources/system_language'
33
- require 'ruby-lokalise-api/resources/team'
34
- require 'ruby-lokalise-api/resources/order'
35
- require 'ruby-lokalise-api/resources/payment_card'
36
- require 'ruby-lokalise-api/resources/translation_provider'
37
- require 'ruby-lokalise-api/resources/team_user_group'
38
- require 'ruby-lokalise-api/resources/custom_translation_status'
39
- require 'ruby-lokalise-api/resources/webhook'
40
- require 'ruby-lokalise-api/resources/segment'
41
- require 'ruby-lokalise-api/resources/team_user_billing_details'
42
-
43
- require 'ruby-lokalise-api/collections/base'
44
- require 'ruby-lokalise-api/collections/branch'
45
- require 'ruby-lokalise-api/collections/project'
46
- require 'ruby-lokalise-api/collections/team'
47
- require 'ruby-lokalise-api/collections/system_language'
48
- require 'ruby-lokalise-api/collections/project_language'
49
- require 'ruby-lokalise-api/collections/project_comment'
50
- require 'ruby-lokalise-api/collections/queued_process'
51
- require 'ruby-lokalise-api/collections/key_comment'
52
- require 'ruby-lokalise-api/collections/key'
53
- require 'ruby-lokalise-api/collections/contributor'
54
- require 'ruby-lokalise-api/collections/file'
55
- require 'ruby-lokalise-api/collections/translation'
56
- require 'ruby-lokalise-api/collections/team_user'
57
- require 'ruby-lokalise-api/collections/task'
58
- require 'ruby-lokalise-api/collections/snapshot'
59
- require 'ruby-lokalise-api/collections/screenshot'
60
- require 'ruby-lokalise-api/collections/order'
61
- require 'ruby-lokalise-api/collections/payment_card'
62
- require 'ruby-lokalise-api/collections/translation_provider'
63
- require 'ruby-lokalise-api/collections/team_user_group'
64
- require 'ruby-lokalise-api/collections/custom_translation_status'
65
- require 'ruby-lokalise-api/collections/webhook'
66
- require 'ruby-lokalise-api/collections/segment'
67
-
68
- require 'ruby-lokalise-api/client'
69
- require 'ruby-lokalise-api/oauth_client'
70
-
71
- module Lokalise
72
- class << self
73
- # Initializes a new Client object
74
- #
75
- # @return [Lokalise::Client]
76
- # @param token [String]
77
- # @param params [Hash]
78
- def client(token, params = {})
79
- @client ||= Lokalise::Client.new token, params
80
- end
81
-
82
- # Reset the currently set client
83
- def reset_client!
84
- @client = nil
85
- end
86
-
87
- # Initializes a new OAuthClient object
88
- #
89
- # @return [Lokalise::OAuthClient]
90
- # @param token [String]
91
- # @param params [Hash]
92
- def oauth_client(token, params = {})
93
- @oauth_client ||= Lokalise::OAuthClient.new token, params
94
- end
95
-
96
- # Reset the currently set OAuth client
97
- def reset_oauth_client!
98
- @oauth_client = nil
99
- end
100
- end
101
- end
@@ -1,89 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe Lokalise::Connection do
4
- include described_class
5
-
6
- let(:project_id) { '803826145ba90b42d5d860.46800099' }
7
- let(:key_id) { 44_596_059 }
8
-
9
- before { Lokalise.reset_client! }
10
-
11
- after do
12
- Lokalise.reset_client!
13
- Faraday.default_adapter = :net_http
14
- end
15
-
16
- it 'Authorization header must be present for OAuth client' do
17
- conn = connection test_oauth_client
18
- expect(conn.headers['Authorization']).to eq("Bearer #{test_client.token}")
19
- expect(conn.headers['X-api-token']).to be_nil
20
- end
21
-
22
- it 'timeouts and compression should not be set by default but the token must be present' do
23
- conn = connection test_client
24
- expect(conn.options.timeout).to be_nil
25
- expect(conn.options.open_timeout).to be_nil
26
- expect(conn.headers['X-api-token']).to eq(test_client.token)
27
- expect(conn.builder.handlers).not_to include(FaradayMiddleware::Gzip)
28
- end
29
-
30
- it 'allows to customize timeouts' do
31
- custom_client = Lokalise.client(ENV['LOKALISE_API_TOKEN'],
32
- open_timeout: 100, timeout: 500)
33
- conn = connection custom_client
34
- expect(conn.options.timeout).to eq(500)
35
- expect(conn.options.open_timeout).to eq(100)
36
- expect(conn.headers['X-api-token']).to eq(custom_client.token)
37
-
38
- custom_client.timeout = 300
39
- custom_client.open_timeout = 200
40
- another_conn = connection custom_client
41
- expect(another_conn.options.timeout).to eq(300)
42
- expect(another_conn.options.open_timeout).to eq(200)
43
- end
44
-
45
- it 'is possible to customize adapter' do
46
- conn = connection test_client
47
- expect(conn.builder.adapter).to eq(Faraday::Adapter::NetHttp)
48
-
49
- Faraday.default_adapter = :excon
50
-
51
- another_conn = connection test_client
52
- expect(another_conn.builder.adapter).to eq(Faraday::Adapter::Excon)
53
- expect(conn.builder.adapter).to eq(Faraday::Adapter::NetHttp)
54
- end
55
-
56
- it 'allows to customize compression' do
57
- custom_client = Lokalise.client(ENV['LOKALISE_API_TOKEN'], enable_compression: true)
58
- conn = connection custom_client
59
- expect(conn.headers['X-api-token']).to eq(custom_client.token)
60
- expect(conn.builder.handlers).to include(FaradayMiddleware::Gzip)
61
- end
62
-
63
- it 'is possible to enable gzip compression' do
64
- gzip_client = Lokalise.client(ENV['LOKALISE_API_TOKEN'], enable_compression: true)
65
- keys = VCR.use_cassette('all_keys_gzip') do
66
- gzip_client.keys project_id
67
- end.collection
68
-
69
- expect(keys.first.key_id).to eq(key_id)
70
- end
71
-
72
- it 'is possible to disable gzip compression' do
73
- no_gzip_client = Lokalise.client(ENV['LOKALISE_API_TOKEN'], enable_compression: false)
74
- keys = VCR.use_cassette('all_keys_no_gzip') do
75
- no_gzip_client.keys project_id
76
- end.collection
77
-
78
- expect(keys.first.key_id).to eq(key_id)
79
- end
80
-
81
- it 'gzip compression is off by default' do
82
- default_gzip_client = Lokalise.client(ENV['LOKALISE_API_TOKEN'])
83
- keys = VCR.use_cassette('all_keys_default_gzip') do
84
- default_gzip_client.keys project_id
85
- end.collection
86
-
87
- expect(keys.first.key_id).to eq(key_id)
88
- end
89
- end