lokalise-api-next 0.0.2

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 (58) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +13 -0
  3. data/README.md +92 -0
  4. data/lib/lokalise_api_next/base_client.rb +32 -0
  5. data/lib/lokalise_api_next/client_vantage.rb +10 -0
  6. data/lib/lokalise_api_next/collections/base.rb +26 -0
  7. data/lib/lokalise_api_next/collections/vantage/content_units.rb +14 -0
  8. data/lib/lokalise_api_next/collections/vantage/exports.rb +14 -0
  9. data/lib/lokalise_api_next/collections/vantage/project_items.rb +14 -0
  10. data/lib/lokalise_api_next/collections/vantage/project_languages.rb +12 -0
  11. data/lib/lokalise_api_next/collections/vantage/projects.rb +14 -0
  12. data/lib/lokalise_api_next/collections/vantage/segments.rb +14 -0
  13. data/lib/lokalise_api_next/collections/vantage/tasks.rb +14 -0
  14. data/lib/lokalise_api_next/collections/vantage/uploads.rb +14 -0
  15. data/lib/lokalise_api_next/concerns/paginated.rb +24 -0
  16. data/lib/lokalise_api_next/connection.rb +59 -0
  17. data/lib/lokalise_api_next/endpoints/base.rb +27 -0
  18. data/lib/lokalise_api_next/endpoints/vantage/content_units.rb +18 -0
  19. data/lib/lokalise_api_next/endpoints/vantage/exports.rb +40 -0
  20. data/lib/lokalise_api_next/endpoints/vantage/imports.rb +18 -0
  21. data/lib/lokalise_api_next/endpoints/vantage/project_items.rb +18 -0
  22. data/lib/lokalise_api_next/endpoints/vantage/project_languages.rb +18 -0
  23. data/lib/lokalise_api_next/endpoints/vantage/projects.rb +23 -0
  24. data/lib/lokalise_api_next/endpoints/vantage/segments.rb +31 -0
  25. data/lib/lokalise_api_next/endpoints/vantage/tasks.rb +22 -0
  26. data/lib/lokalise_api_next/endpoints/vantage/translation_statuses.rb +22 -0
  27. data/lib/lokalise_api_next/endpoints/vantage/uploads.rb +27 -0
  28. data/lib/lokalise_api_next/error.rb +105 -0
  29. data/lib/lokalise_api_next/models/base.rb +34 -0
  30. data/lib/lokalise_api_next/models/vantage/content_unit.rb +19 -0
  31. data/lib/lokalise_api_next/models/vantage/export.rb +19 -0
  32. data/lib/lokalise_api_next/models/vantage/export_download_url.rb +12 -0
  33. data/lib/lokalise_api_next/models/vantage/import.rb +12 -0
  34. data/lib/lokalise_api_next/models/vantage/project.rb +23 -0
  35. data/lib/lokalise_api_next/models/vantage/project_item.rb +18 -0
  36. data/lib/lokalise_api_next/models/vantage/project_language.rb +17 -0
  37. data/lib/lokalise_api_next/models/vantage/segment.rb +24 -0
  38. data/lib/lokalise_api_next/models/vantage/task.rb +23 -0
  39. data/lib/lokalise_api_next/models/vantage/translation_status.rb +17 -0
  40. data/lib/lokalise_api_next/models/vantage/upload.rb +23 -0
  41. data/lib/lokalise_api_next/models/vantage/upload_batch.rb +15 -0
  42. data/lib/lokalise_api_next/request.rb +32 -0
  43. data/lib/lokalise_api_next/response.rb +34 -0
  44. data/lib/lokalise_api_next/rest/vantage/content_units.rb +19 -0
  45. data/lib/lokalise_api_next/rest/vantage/exports.rb +39 -0
  46. data/lib/lokalise_api_next/rest/vantage/imports.rb +19 -0
  47. data/lib/lokalise_api_next/rest/vantage/project_items.rb +19 -0
  48. data/lib/lokalise_api_next/rest/vantage/project_languages.rb +19 -0
  49. data/lib/lokalise_api_next/rest/vantage/projects.rb +26 -0
  50. data/lib/lokalise_api_next/rest/vantage/segments.rb +26 -0
  51. data/lib/lokalise_api_next/rest/vantage/tasks.rb +19 -0
  52. data/lib/lokalise_api_next/rest/vantage/translation_statuses.rb +19 -0
  53. data/lib/lokalise_api_next/rest/vantage/uploads.rb +33 -0
  54. data/lib/lokalise_api_next/rest_vantage.rb +20 -0
  55. data/lib/lokalise_api_next/version.rb +5 -0
  56. data/lib/lokalise_api_next.rb +16 -0
  57. data/lokalise-api-next.gemspec +31 -0
  58. metadata +156 -0
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ module LokaliseApiNext
4
+ module Rest
5
+ module Vantage
6
+ # Provides project upload API operations.
7
+ # :reek:DataClump
8
+ module Uploads
9
+ ENDPOINT = Endpoints::Vantage::Uploads
10
+ MODEL = Models::Vantage::UploadBatch
11
+ COLLECTION = Collections::Vantage::Uploads
12
+
13
+ def uploads(project_id, params = {})
14
+ uri = ENDPOINT.list(project_id: project_id)
15
+
16
+ COLLECTION.from_response(get(uri, params: params))
17
+ end
18
+
19
+ def stage_uploads(project_id, params)
20
+ uri = ENDPOINT.stage(project_id: project_id)
21
+
22
+ MODEL.from_response(post(uri, body: params))
23
+ end
24
+
25
+ def complete_uploads(project_id, params)
26
+ uri = ENDPOINT.complete(project_id: project_id)
27
+
28
+ post(uri, body: params)
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module LokaliseApiNext
4
+ # Combines Vantage API operations and HTTP functionality.
5
+ module RestVantage
6
+ include Connection
7
+ include Request
8
+
9
+ include Rest::Vantage::ContentUnits
10
+ include Rest::Vantage::Exports
11
+ include Rest::Vantage::Imports
12
+ include Rest::Vantage::Projects
13
+ include Rest::Vantage::ProjectItems
14
+ include Rest::Vantage::ProjectLanguages
15
+ include Rest::Vantage::Segments
16
+ include Rest::Vantage::Tasks
17
+ include Rest::Vantage::TranslationStatuses
18
+ include Rest::Vantage::Uploads
19
+ end
20
+ end
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module LokaliseApiNext
4
+ VERSION = '0.0.2'
5
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'zeitwerk'
4
+ require 'oj'
5
+
6
+ loader = Zeitwerk::Loader.for_gem
7
+ loader.setup
8
+
9
+ # Ruby SDK for Lokalise APIs.
10
+ module LokaliseApiNext
11
+ class << self
12
+ def client_vantage(token, params = {})
13
+ ClientVantage.new(token, params)
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require File.expand_path('lib/lokalise_api_next/version', __dir__)
4
+
5
+ Gem::Specification.new do |spec|
6
+ spec.name = 'lokalise-api-next'
7
+ spec.version = LokaliseApiNext::VERSION
8
+ spec.authors = ['Elijah S. Krukowski']
9
+ spec.email = ['elskruk@proton.me']
10
+ spec.summary = 'Ruby SDK for the Lokalise API'
11
+ spec.description = 'A Ruby client for interacting with the Lokalise API.'
12
+ spec.homepage = 'https://github.com/lokalise/ruby-lokalise-api-next'
13
+ spec.license = 'BSD-3-Clause'
14
+ spec.required_ruby_version = '>= 3.4'
15
+
16
+ spec.files = Dir['README.md', 'LICENSE',
17
+ 'lib/**/*.rb',
18
+ 'lokalise-api-next.gemspec']
19
+
20
+ spec.add_dependency 'addressable', '~> 2.9'
21
+ spec.add_dependency 'httpx', '~> 1.9'
22
+ spec.add_dependency 'oj', '~> 3.17'
23
+ spec.add_dependency 'zeitwerk', '~> 2.8'
24
+
25
+ spec.metadata = {
26
+ 'rubygems_mfa_required' => 'true',
27
+ 'source_code_uri' => spec.homepage,
28
+ 'bug_tracker_uri' => "#{spec.homepage}/issues",
29
+ 'documentation_uri' => "#{spec.homepage}#readme"
30
+ }
31
+ end
metadata ADDED
@@ -0,0 +1,156 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: lokalise-api-next
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Elijah S. Krukowski
8
+ bindir: bin
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: addressable
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '2.9'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "~>"
24
+ - !ruby/object:Gem::Version
25
+ version: '2.9'
26
+ - !ruby/object:Gem::Dependency
27
+ name: httpx
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - "~>"
31
+ - !ruby/object:Gem::Version
32
+ version: '1.9'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '1.9'
40
+ - !ruby/object:Gem::Dependency
41
+ name: oj
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '3.17'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '3.17'
54
+ - !ruby/object:Gem::Dependency
55
+ name: zeitwerk
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '2.8'
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '2.8'
68
+ description: A Ruby client for interacting with the Lokalise API.
69
+ email:
70
+ - elskruk@proton.me
71
+ executables: []
72
+ extensions: []
73
+ extra_rdoc_files: []
74
+ files:
75
+ - LICENSE
76
+ - README.md
77
+ - lib/lokalise_api_next.rb
78
+ - lib/lokalise_api_next/base_client.rb
79
+ - lib/lokalise_api_next/client_vantage.rb
80
+ - lib/lokalise_api_next/collections/base.rb
81
+ - lib/lokalise_api_next/collections/vantage/content_units.rb
82
+ - lib/lokalise_api_next/collections/vantage/exports.rb
83
+ - lib/lokalise_api_next/collections/vantage/project_items.rb
84
+ - lib/lokalise_api_next/collections/vantage/project_languages.rb
85
+ - lib/lokalise_api_next/collections/vantage/projects.rb
86
+ - lib/lokalise_api_next/collections/vantage/segments.rb
87
+ - lib/lokalise_api_next/collections/vantage/tasks.rb
88
+ - lib/lokalise_api_next/collections/vantage/uploads.rb
89
+ - lib/lokalise_api_next/concerns/paginated.rb
90
+ - lib/lokalise_api_next/connection.rb
91
+ - lib/lokalise_api_next/endpoints/base.rb
92
+ - lib/lokalise_api_next/endpoints/vantage/content_units.rb
93
+ - lib/lokalise_api_next/endpoints/vantage/exports.rb
94
+ - lib/lokalise_api_next/endpoints/vantage/imports.rb
95
+ - lib/lokalise_api_next/endpoints/vantage/project_items.rb
96
+ - lib/lokalise_api_next/endpoints/vantage/project_languages.rb
97
+ - lib/lokalise_api_next/endpoints/vantage/projects.rb
98
+ - lib/lokalise_api_next/endpoints/vantage/segments.rb
99
+ - lib/lokalise_api_next/endpoints/vantage/tasks.rb
100
+ - lib/lokalise_api_next/endpoints/vantage/translation_statuses.rb
101
+ - lib/lokalise_api_next/endpoints/vantage/uploads.rb
102
+ - lib/lokalise_api_next/error.rb
103
+ - lib/lokalise_api_next/models/base.rb
104
+ - lib/lokalise_api_next/models/vantage/content_unit.rb
105
+ - lib/lokalise_api_next/models/vantage/export.rb
106
+ - lib/lokalise_api_next/models/vantage/export_download_url.rb
107
+ - lib/lokalise_api_next/models/vantage/import.rb
108
+ - lib/lokalise_api_next/models/vantage/project.rb
109
+ - lib/lokalise_api_next/models/vantage/project_item.rb
110
+ - lib/lokalise_api_next/models/vantage/project_language.rb
111
+ - lib/lokalise_api_next/models/vantage/segment.rb
112
+ - lib/lokalise_api_next/models/vantage/task.rb
113
+ - lib/lokalise_api_next/models/vantage/translation_status.rb
114
+ - lib/lokalise_api_next/models/vantage/upload.rb
115
+ - lib/lokalise_api_next/models/vantage/upload_batch.rb
116
+ - lib/lokalise_api_next/request.rb
117
+ - lib/lokalise_api_next/response.rb
118
+ - lib/lokalise_api_next/rest/vantage/content_units.rb
119
+ - lib/lokalise_api_next/rest/vantage/exports.rb
120
+ - lib/lokalise_api_next/rest/vantage/imports.rb
121
+ - lib/lokalise_api_next/rest/vantage/project_items.rb
122
+ - lib/lokalise_api_next/rest/vantage/project_languages.rb
123
+ - lib/lokalise_api_next/rest/vantage/projects.rb
124
+ - lib/lokalise_api_next/rest/vantage/segments.rb
125
+ - lib/lokalise_api_next/rest/vantage/tasks.rb
126
+ - lib/lokalise_api_next/rest/vantage/translation_statuses.rb
127
+ - lib/lokalise_api_next/rest/vantage/uploads.rb
128
+ - lib/lokalise_api_next/rest_vantage.rb
129
+ - lib/lokalise_api_next/version.rb
130
+ - lokalise-api-next.gemspec
131
+ homepage: https://github.com/lokalise/ruby-lokalise-api-next
132
+ licenses:
133
+ - BSD-3-Clause
134
+ metadata:
135
+ rubygems_mfa_required: 'true'
136
+ source_code_uri: https://github.com/lokalise/ruby-lokalise-api-next
137
+ bug_tracker_uri: https://github.com/lokalise/ruby-lokalise-api-next/issues
138
+ documentation_uri: https://github.com/lokalise/ruby-lokalise-api-next#readme
139
+ rdoc_options: []
140
+ require_paths:
141
+ - lib
142
+ required_ruby_version: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '3.4'
147
+ required_rubygems_version: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - ">="
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
152
+ requirements: []
153
+ rubygems_version: 4.0.23
154
+ specification_version: 4
155
+ summary: Ruby SDK for the Lokalise API
156
+ test_files: []