ruby-lokalise-api 5.0.0 → 6.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (147) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +7 -5
  4. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/base_request.rb +4 -4
  5. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/client.rb +24 -24
  6. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/base.rb +10 -10
  7. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/branch.rb +1 -1
  8. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/contributor.rb +1 -1
  9. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/custom_translation_status.rb +1 -1
  10. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/file.rb +1 -1
  11. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/key.rb +2 -2
  12. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/key_comment.rb +1 -1
  13. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/order.rb +1 -1
  14. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/payment_card.rb +1 -1
  15. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/project.rb +1 -1
  16. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/project_comment.rb +1 -1
  17. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/project_language.rb +1 -1
  18. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/queued_process.rb +1 -1
  19. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/screenshot.rb +1 -1
  20. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/segment.rb +1 -1
  21. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/snapshot.rb +1 -1
  22. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/system_language.rb +1 -1
  23. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/task.rb +1 -1
  24. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/team.rb +1 -1
  25. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/team_user.rb +1 -1
  26. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/team_user_group.rb +1 -1
  27. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/translation.rb +1 -1
  28. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/translation_provider.rb +1 -1
  29. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/collections/webhook.rb +1 -1
  30. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/connection.rb +2 -2
  31. data/lib/ruby_lokalise_api/data/attributes.yml +235 -0
  32. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/error.rb +14 -14
  33. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/json_handler.rb +1 -1
  34. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/oauth2/auth.rb +2 -2
  35. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/oauth2/connection.rb +2 -2
  36. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/oauth2/request.rb +3 -3
  37. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/oauth2_client.rb +1 -1
  38. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/request.rb +3 -3
  39. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/base.rb +16 -8
  40. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/branch.rb +1 -1
  41. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/contributor.rb +1 -1
  42. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/custom_translation_status.rb +1 -1
  43. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/file.rb +2 -2
  44. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/key.rb +1 -1
  45. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/key_comment.rb +1 -1
  46. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/order.rb +1 -1
  47. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/payment_card.rb +1 -1
  48. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/project.rb +1 -1
  49. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/project_comment.rb +1 -1
  50. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/project_language.rb +1 -1
  51. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/queued_process.rb +1 -1
  52. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/screenshot.rb +1 -1
  53. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/segment.rb +1 -1
  54. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/snapshot.rb +2 -2
  55. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/system_language.rb +1 -1
  56. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/task.rb +1 -1
  57. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/team.rb +1 -1
  58. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/team_user.rb +1 -1
  59. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/team_user_billing_details.rb +1 -1
  60. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/team_user_group.rb +1 -1
  61. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/translation.rb +1 -1
  62. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/translation_provider.rb +1 -1
  63. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/resources/webhook.rb +1 -1
  64. data/lib/ruby_lokalise_api/rest/branches.rb +69 -0
  65. data/lib/ruby_lokalise_api/rest/comments.rb +61 -0
  66. data/lib/ruby_lokalise_api/rest/contributors.rb +58 -0
  67. data/lib/ruby_lokalise_api/rest/custom_translation_statuses.rb +67 -0
  68. data/lib/ruby_lokalise_api/rest/files.rb +49 -0
  69. data/lib/ruby_lokalise_api/rest/keys.rb +79 -0
  70. data/lib/ruby_lokalise_api/rest/languages.rb +67 -0
  71. data/lib/ruby_lokalise_api/rest/orders.rb +37 -0
  72. data/lib/ruby_lokalise_api/rest/payment_cards.rb +43 -0
  73. data/lib/ruby_lokalise_api/rest/projects.rb +62 -0
  74. data/lib/ruby_lokalise_api/rest/queued_processes.rb +28 -0
  75. data/lib/ruby_lokalise_api/rest/screenshots.rb +58 -0
  76. data/lib/ruby_lokalise_api/rest/segments.rb +45 -0
  77. data/lib/ruby_lokalise_api/rest/snapshots.rb +47 -0
  78. data/lib/ruby_lokalise_api/rest/tasks.rb +58 -0
  79. data/lib/ruby_lokalise_api/rest/team_user_billing_details.rb +36 -0
  80. data/lib/ruby_lokalise_api/rest/team_user_groups.rb +109 -0
  81. data/lib/ruby_lokalise_api/rest/team_users.rb +48 -0
  82. data/lib/ruby_lokalise_api/rest/teams.rb +16 -0
  83. data/lib/ruby_lokalise_api/rest/translation_providers.rb +27 -0
  84. data/lib/ruby_lokalise_api/rest/translations.rb +39 -0
  85. data/lib/ruby_lokalise_api/rest/webhooks.rb +69 -0
  86. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/utils/attribute_helpers.rb +7 -7
  87. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/utils/endpoint_helpers.rb +1 -1
  88. data/lib/{ruby-lokalise-api → ruby_lokalise_api}/utils/string_utils.rb +1 -1
  89. data/lib/ruby_lokalise_api/version.rb +5 -0
  90. data/lib/ruby_lokalise_api.rb +50 -0
  91. data/ruby-lokalise-api.gemspec +8 -7
  92. metadata +125 -157
  93. data/lib/ruby-lokalise-api/data/attributes.json +0 -259
  94. data/lib/ruby-lokalise-api/rest/branches.rb +0 -67
  95. data/lib/ruby-lokalise-api/rest/comments.rb +0 -59
  96. data/lib/ruby-lokalise-api/rest/contributors.rb +0 -56
  97. data/lib/ruby-lokalise-api/rest/custom_translation_statuses.rb +0 -65
  98. data/lib/ruby-lokalise-api/rest/files.rb +0 -36
  99. data/lib/ruby-lokalise-api/rest/keys.rb +0 -77
  100. data/lib/ruby-lokalise-api/rest/languages.rb +0 -65
  101. data/lib/ruby-lokalise-api/rest/orders.rb +0 -35
  102. data/lib/ruby-lokalise-api/rest/payment_cards.rb +0 -41
  103. data/lib/ruby-lokalise-api/rest/projects.rb +0 -60
  104. data/lib/ruby-lokalise-api/rest/queued_processes.rb +0 -26
  105. data/lib/ruby-lokalise-api/rest/screenshots.rb +0 -56
  106. data/lib/ruby-lokalise-api/rest/segments.rb +0 -43
  107. data/lib/ruby-lokalise-api/rest/snapshots.rb +0 -45
  108. data/lib/ruby-lokalise-api/rest/tasks.rb +0 -56
  109. data/lib/ruby-lokalise-api/rest/team_user_billing_details.rb +0 -34
  110. data/lib/ruby-lokalise-api/rest/team_user_group.rb +0 -107
  111. data/lib/ruby-lokalise-api/rest/team_users.rb +0 -46
  112. data/lib/ruby-lokalise-api/rest/teams.rb +0 -14
  113. data/lib/ruby-lokalise-api/rest/translation_providers.rb +0 -25
  114. data/lib/ruby-lokalise-api/rest/translations.rb +0 -37
  115. data/lib/ruby-lokalise-api/rest/webhooks.rb +0 -67
  116. data/lib/ruby-lokalise-api/version.rb +0 -5
  117. data/lib/ruby-lokalise-api.rb +0 -111
  118. data/spec/lib/ruby-lokalise-api/connection_spec.rb +0 -68
  119. data/spec/lib/ruby-lokalise-api/custom_json_parser_spec.rb +0 -81
  120. data/spec/lib/ruby-lokalise-api/error_spec.rb +0 -41
  121. data/spec/lib/ruby-lokalise-api/oauth2/auth_spec.rb +0 -73
  122. data/spec/lib/ruby-lokalise-api/rest/branches_spec.rb +0 -140
  123. data/spec/lib/ruby-lokalise-api/rest/comments_spec.rb +0 -118
  124. data/spec/lib/ruby-lokalise-api/rest/contributors_spec.rb +0 -132
  125. data/spec/lib/ruby-lokalise-api/rest/custom_translation_statuses_spec.rb +0 -131
  126. data/spec/lib/ruby-lokalise-api/rest/files_spec.rb +0 -66
  127. data/spec/lib/ruby-lokalise-api/rest/keys_spec.rb +0 -199
  128. data/spec/lib/ruby-lokalise-api/rest/languages_spec.rb +0 -134
  129. data/spec/lib/ruby-lokalise-api/rest/orders_spec.rb +0 -113
  130. data/spec/lib/ruby-lokalise-api/rest/payment_cards_spec.rb +0 -92
  131. data/spec/lib/ruby-lokalise-api/rest/projects_spec.rb +0 -150
  132. data/spec/lib/ruby-lokalise-api/rest/queued_processes_spec.rb +0 -57
  133. data/spec/lib/ruby-lokalise-api/rest/screenshots_spec.rb +0 -127
  134. data/spec/lib/ruby-lokalise-api/rest/segments_spec.rb +0 -106
  135. data/spec/lib/ruby-lokalise-api/rest/snapshots_spec.rb +0 -117
  136. data/spec/lib/ruby-lokalise-api/rest/tasks_spec.rb +0 -145
  137. data/spec/lib/ruby-lokalise-api/rest/team_user_billing_details_spec.rb +0 -48
  138. data/spec/lib/ruby-lokalise-api/rest/team_user_groups_spec.rb +0 -278
  139. data/spec/lib/ruby-lokalise-api/rest/team_users_spec.rb +0 -95
  140. data/spec/lib/ruby-lokalise-api/rest/teams_spec.rb +0 -25
  141. data/spec/lib/ruby-lokalise-api/rest/translation_providers_spec.rb +0 -48
  142. data/spec/lib/ruby-lokalise-api/rest/translations_spec.rb +0 -118
  143. data/spec/lib/ruby-lokalise-api/rest/webhooks_spec.rb +0 -126
  144. data/spec/lib/ruby-lokalise-api_spec.rb +0 -47
  145. data/spec/spec_helper.rb +0 -22
  146. data/spec/support/test_client.rb +0 -15
  147. data/spec/support/vcr.rb +0 -15
@@ -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 = '5.0.0'
5
- end
@@ -1,111 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'faraday'
4
- require 'faraday/gzip'
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/base_request'
12
- require 'ruby-lokalise-api/request'
13
- require 'ruby-lokalise-api/error'
14
- require 'ruby-lokalise-api/utils/string_utils'
15
- require 'ruby-lokalise-api/utils/attribute_helpers'
16
- require 'ruby-lokalise-api/utils/endpoint_helpers'
17
-
18
- require 'ruby-lokalise-api/oauth2/connection'
19
- require 'ruby-lokalise-api/oauth2/request'
20
-
21
- require 'ruby-lokalise-api/resources/base'
22
- require 'ruby-lokalise-api/resources/branch'
23
- require 'ruby-lokalise-api/resources/project'
24
- require 'ruby-lokalise-api/resources/project_language'
25
- require 'ruby-lokalise-api/resources/queued_process'
26
- require 'ruby-lokalise-api/resources/key_comment'
27
- require 'ruby-lokalise-api/resources/contributor'
28
- require 'ruby-lokalise-api/resources/file'
29
- require 'ruby-lokalise-api/resources/translation'
30
- require 'ruby-lokalise-api/resources/team_user'
31
- require 'ruby-lokalise-api/resources/task'
32
- require 'ruby-lokalise-api/resources/snapshot'
33
- require 'ruby-lokalise-api/resources/screenshot'
34
- require 'ruby-lokalise-api/resources/key'
35
- require 'ruby-lokalise-api/resources/project_comment'
36
- require 'ruby-lokalise-api/resources/system_language'
37
- require 'ruby-lokalise-api/resources/team'
38
- require 'ruby-lokalise-api/resources/order'
39
- require 'ruby-lokalise-api/resources/payment_card'
40
- require 'ruby-lokalise-api/resources/translation_provider'
41
- require 'ruby-lokalise-api/resources/team_user_group'
42
- require 'ruby-lokalise-api/resources/custom_translation_status'
43
- require 'ruby-lokalise-api/resources/webhook'
44
- require 'ruby-lokalise-api/resources/segment'
45
- require 'ruby-lokalise-api/resources/team_user_billing_details'
46
-
47
- require 'ruby-lokalise-api/collections/base'
48
- require 'ruby-lokalise-api/collections/branch'
49
- require 'ruby-lokalise-api/collections/project'
50
- require 'ruby-lokalise-api/collections/team'
51
- require 'ruby-lokalise-api/collections/system_language'
52
- require 'ruby-lokalise-api/collections/project_language'
53
- require 'ruby-lokalise-api/collections/project_comment'
54
- require 'ruby-lokalise-api/collections/queued_process'
55
- require 'ruby-lokalise-api/collections/key_comment'
56
- require 'ruby-lokalise-api/collections/key'
57
- require 'ruby-lokalise-api/collections/contributor'
58
- require 'ruby-lokalise-api/collections/file'
59
- require 'ruby-lokalise-api/collections/translation'
60
- require 'ruby-lokalise-api/collections/team_user'
61
- require 'ruby-lokalise-api/collections/task'
62
- require 'ruby-lokalise-api/collections/snapshot'
63
- require 'ruby-lokalise-api/collections/screenshot'
64
- require 'ruby-lokalise-api/collections/order'
65
- require 'ruby-lokalise-api/collections/payment_card'
66
- require 'ruby-lokalise-api/collections/translation_provider'
67
- require 'ruby-lokalise-api/collections/team_user_group'
68
- require 'ruby-lokalise-api/collections/custom_translation_status'
69
- require 'ruby-lokalise-api/collections/webhook'
70
- require 'ruby-lokalise-api/collections/segment'
71
-
72
- require 'ruby-lokalise-api/client'
73
- require 'ruby-lokalise-api/oauth2_client'
74
-
75
- require 'ruby-lokalise-api/oauth2/auth'
76
-
77
- module Lokalise
78
- class << self
79
- # Initializes a new Client object
80
- #
81
- # @return [Lokalise::Client]
82
- # @param token [String]
83
- # @param params [Hash]
84
- def client(token, params = {})
85
- @client = Lokalise::Client.new token, params
86
- end
87
-
88
- # Reset the currently set client
89
- def reset_client!
90
- @client = nil
91
- end
92
-
93
- # Initializes a new OAuth2Client object
94
- #
95
- # @return [Lokalise::OAuth2Client]
96
- # @param token [String]
97
- # @param params [Hash]
98
- def oauth2_client(token, params = {})
99
- @oauth2_client = Lokalise::OAuth2Client.new token, params
100
- end
101
-
102
- # Reset the currently set OAuth2 client
103
- def reset_oauth2_client!
104
- @oauth2_client = nil
105
- end
106
-
107
- def auth_client(client_id, client_secret)
108
- Lokalise::OAuth2::Auth.new client_id, client_secret
109
- end
110
- end
111
- end
@@ -1,68 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe Lokalise::Connection do
4
- let(:dummy) { Class.new { include Lokalise::Connection }.new }
5
-
6
- let(:project_id) { '803826145ba90b42d5d860.46800099' }
7
- let(:key_id) { 44_596_059 }
8
-
9
- before { Lokalise.reset_client! }
10
-
11
- after { Lokalise.reset_client! }
12
-
13
- it 'Authorization header must be present for OAuth2 client' do
14
- conn = dummy.connection test_oauth2_client
15
- expect(conn.headers['Authorization']).to eq(test_oauth2_client.token)
16
- expect(conn.headers['X-api-token']).to be_nil
17
- end
18
-
19
- it 'timeouts are not be set by default but the token must be present' do
20
- conn = dummy.connection test_client
21
- expect(conn.options.timeout).to be_nil
22
- expect(conn.options.open_timeout).to be_nil
23
- expect(conn.headers['X-api-token']).to eq(test_client.token)
24
- end
25
-
26
- it 'allows to customize timeouts' do
27
- custom_client = Lokalise.client(ENV['LOKALISE_API_TOKEN'],
28
- open_timeout: 100, timeout: 500)
29
- conn = dummy.connection custom_client
30
- expect(conn.options.timeout).to eq(500)
31
- expect(conn.options.open_timeout).to eq(100)
32
- expect(conn.headers['X-api-token']).to eq(custom_client.token)
33
-
34
- custom_client.timeout = 300
35
- custom_client.open_timeout = 200
36
- another_conn = dummy.connection custom_client
37
- expect(another_conn.options.timeout).to eq(300)
38
- expect(another_conn.options.open_timeout).to eq(200)
39
- end
40
-
41
- it 'works with gzip compression' do
42
- gzip_client = Lokalise.client(ENV['LOKALISE_API_TOKEN'])
43
- keys = VCR.use_cassette('all_keys_gzip') do
44
- gzip_client.keys project_id, limit: 30
45
- end.collection
46
-
47
- expect(keys.first.key_id).to eq(key_id)
48
- end
49
-
50
- it 'gzip compression is on by default' do
51
- custom_client = Lokalise.client(ENV['LOKALISE_API_TOKEN'])
52
- conn = dummy.connection custom_client
53
- expect(conn.headers['X-api-token']).to eq(custom_client.token)
54
- expect(conn.builder.handlers).to include(Faraday::Gzip::Middleware)
55
- end
56
-
57
- it 'is possible to customize adapter' do
58
- conn = dummy.connection test_client
59
- expect(conn.builder.adapter).to eq(Faraday::Adapter::NetHttp)
60
-
61
- Faraday.default_adapter = :test
62
-
63
- another_conn = dummy.connection test_client
64
-
65
- expect(another_conn.builder.adapter).to eq(Faraday::Adapter::Test)
66
- expect(conn.builder.adapter).to eq(Faraday::Adapter::NetHttp)
67
- end
68
- end
@@ -1,81 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'oj'
4
-
5
- RSpec.describe Lokalise::JsonHandler do
6
- let(:loaded_json) do
7
- {'projects' => [{'project_id' => '547879415c01a0e6e0b855.29978928',
8
- 'name' => 'demo phoenix copy',
9
- 'description' => '',
10
- 'created_at' => '2018-11-30 20:43:18 (Etc/UTC)',
11
- 'created_by' => 20_181,
12
- 'created_by_email' => 'bodrovis@protonmail.com',
13
- 'team_id' => 176_692,
14
- 'statistics' =>
15
- {'progress' => 0,
16
- 'keys' => 1,
17
- 'team' => 1,
18
- 'base_words' => 0,
19
- 'qa_issues' => 1,
20
- 'languages' =>
21
- [{'language_id' => 640, 'language_iso' => 'en', 'progress' => 0, 'words_to_do' => 0},
22
- {'language_id' => 597, 'language_iso' => 'ru', 'progress' => 0, 'words_to_do' => 0},
23
- {'language_id' => 673, 'language_iso' => 'f_over', 'progress' => 0, 'words_to_do' => 0}]}}]}
24
- end
25
-
26
- let(:dumped_json) do
27
- '{":name":"rspec proj",":description":"demo project for rspec"}'
28
- end
29
-
30
- # rubocop:disable RSpec/LeakyConstantDeclaration, Lint/ConstantDefinitionInBlock
31
- before do
32
- module Lokalise
33
- module JsonHandler
34
- def custom_dump(obj)
35
- Oj.dump obj
36
- end
37
-
38
- def custom_load(obj)
39
- Oj.load obj
40
- end
41
- end
42
- end
43
- end
44
-
45
- after do
46
- module Lokalise
47
- module JsonHandler
48
- def custom_dump(obj)
49
- JSON.dump obj
50
- end
51
-
52
- def custom_load(obj)
53
- JSON.parse obj
54
- end
55
- end
56
- end
57
- end
58
- # rubocop:enable RSpec/LeakyConstantDeclaration, Lint/ConstantDefinitionInBlock
59
-
60
- it 'allows to customize #load' do
61
- allow(Oj).to receive(:load).and_return(loaded_json)
62
- expect(JSON).not_to receive(:parse)
63
- projects = VCR.use_cassette('all_projects_pagination') do
64
- test_client.projects limit: 1, page: 2
65
- end
66
-
67
- expect(projects.collection.count).to eq(1)
68
- expect(projects.total_results).to eq(5)
69
- expect(projects.collection.first.name).to eq('demo phoenix copy')
70
- end
71
-
72
- it 'allows to customize #dump' do
73
- allow(Oj).to receive(:dump).and_return(dumped_json)
74
- expect(JSON).not_to receive(:dump)
75
- project = VCR.use_cassette('new_project') do
76
- test_client.create_project name: 'rspec proj', description: 'demo project for rspec'
77
- end
78
-
79
- expect(project.name).to eq('rspec proj')
80
- end
81
- end