txtextcontrol-reportingcloud 1.0.3 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d2b985e985d074bac7f609544b426343b0be9de7
|
4
|
+
data.tar.gz: 8f190bc99f4f3954f2aac8cc35a5e3e6c9bb41bc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e58da2cb52df4dc3f58fb66f51466c626f6119b7609e193877eef9ed804c516fbc890743e483ab288b524e95f065128bb11dfae2aed89b41ef7743819cb5bc37
|
7
|
+
data.tar.gz: e7b306757c6c86f695e82257d5e2d7ce4b53768d5e18a1cf25ef7fcf302f38882f6eca20f9cb25a877fdae21291aea01720e0143d5accf29d1c78afe9490736a
|
@@ -0,0 +1,63 @@
|
|
1
|
+
# ReportingCloud Ruby Wrapper
|
2
|
+
#
|
3
|
+
# Official wrapper (authored by Text Control GmbH, publisher of ReportingCloud) to access
|
4
|
+
# ReportingCloud in Ruby.
|
5
|
+
#
|
6
|
+
# Go to http://www.reporting.cloud to learn more about ReportingCloud
|
7
|
+
# Go to https://github.com/TextControl/txtextcontrol-reportingcloud-ruby for the
|
8
|
+
# canonical source repository.
|
9
|
+
#
|
10
|
+
# License: https://raw.githubusercontent.com/TextControl/txtextcontrol-reportingcloud-ruby/master/LICENSE.md
|
11
|
+
#
|
12
|
+
# Copyright: © 2017 Text Control GmbH
|
13
|
+
|
14
|
+
module TXTextControl
|
15
|
+
module ReportingCloud
|
16
|
+
|
17
|
+
# Represents an incorrect word in spell checked text.
|
18
|
+
# @attr_reader [Integer] length The length of the spelled word.
|
19
|
+
# @attr_reader [Integer] start The starting position of a spelled word.
|
20
|
+
# @attr_reader [String] text The text of the spelled word.
|
21
|
+
# @attr_reader [Boolean] is_duplicate Indicating whether the spelled word is
|
22
|
+
# declared as incorrect, because the previous word has the same text.
|
23
|
+
# @attr_reader [String] language Indicating the language the incorrect word
|
24
|
+
# was spelled.
|
25
|
+
# @author Thorsten Kummerow (@thomerow)
|
26
|
+
class IncorrectWord
|
27
|
+
attr_reader :length
|
28
|
+
attr_reader :start
|
29
|
+
attr_reader :text
|
30
|
+
attr_reader :is_duplicate
|
31
|
+
attr_reader :language
|
32
|
+
|
33
|
+
alias_method :is_duplicate?, :is_duplicate
|
34
|
+
|
35
|
+
# @param [Integer] length The starting position of a spelled word.
|
36
|
+
# @param [Integer] start The starting position of a spelled word.
|
37
|
+
# @param [String] text The text of the spelled word.
|
38
|
+
# @param [Boolean] is_duplicate Indicating whether the spelled word is
|
39
|
+
# declared as incorrect, because the previous word has the same text.
|
40
|
+
# @param [String] language Indicating the language the incorrect word
|
41
|
+
# was spelled.
|
42
|
+
def initialize(length, start, text, is_duplicate, language)
|
43
|
+
@length = Integer(length)
|
44
|
+
@start = Integer(start)
|
45
|
+
@text = text
|
46
|
+
@is_duplicate = !!is_duplicate
|
47
|
+
@language = language
|
48
|
+
end
|
49
|
+
|
50
|
+
# Creates an IncorrectWord instance from a hash.
|
51
|
+
# @param [Hash] hash The hash to try and create an IncorrectWord instance from.
|
52
|
+
# @return [IncorrectWord] A newly created IncorrectWord instance.
|
53
|
+
def self.from_camelized_hash(hash)
|
54
|
+
l = hash["length"]
|
55
|
+
s = hash["start"]
|
56
|
+
txt = hash["text"]
|
57
|
+
id = hash["isDuplicate"]
|
58
|
+
lan = hash["language"]
|
59
|
+
return IncorrectWord.new(l, s, txt, id, lan)
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
@@ -23,6 +23,10 @@ module TXTextControl
|
|
23
23
|
# don't have merge data should be removed from the template or not.
|
24
24
|
# @attr remove_trailing_whitespace [Boolean] Specifies whether trailing
|
25
25
|
# whitespace should be removed before saving a document.
|
26
|
+
# @attr merge_html [Boolean] Specifies whether field data can contain
|
27
|
+
# formatted Html content or not. The default value is false. Html
|
28
|
+
# content must be enclosed in an <html /> tag element. Only active in
|
29
|
+
# the Merge endpoint.
|
26
30
|
# @attr author [String] The document's author.
|
27
31
|
# @attr creation_date [DateTime] The document's creation date.
|
28
32
|
# @attr creator_application [String] The application which created the document.
|
@@ -36,17 +40,25 @@ module TXTextControl
|
|
36
40
|
attr_accessor :remove_empty_blocks
|
37
41
|
attr_accessor :remove_empty_images
|
38
42
|
attr_accessor :remove_trailing_whitespace
|
43
|
+
attr_accessor :merge_html
|
39
44
|
attr_accessor :author
|
40
45
|
attr_accessor :creator_application
|
41
46
|
attr_accessor :document_subject
|
42
47
|
attr_accessor :document_title
|
43
48
|
attr_accessor :user_password
|
44
49
|
|
50
|
+
alias_method :remove_empty_fields?, :remove_empty_fields
|
51
|
+
alias_method :remove_empty_blocks?, :remove_empty_blocks
|
52
|
+
alias_method :remove_empty_images?, :remove_empty_images
|
53
|
+
alias_method :remove_trailing_whitespace?, :remove_trailing_whitespace
|
54
|
+
alias_method :merge_html?, :merge_html
|
55
|
+
|
45
56
|
def initialize
|
46
57
|
@remove_empty_fields = true
|
47
58
|
@remove_empty_blocks = true
|
48
59
|
@remove_empty_images = true
|
49
60
|
@remove_trailing_whitespace = true
|
61
|
+
@merge_html = false
|
50
62
|
|
51
63
|
@author = nil
|
52
64
|
@creation_date = nil
|
@@ -98,6 +110,7 @@ module TXTextControl
|
|
98
110
|
"removeEmptyBlocks" => @remove_empty_blocks,
|
99
111
|
"removeEmptyImages" => @remove_empty_images,
|
100
112
|
"removeTrailingWhitespace" => @remove_trailing_whitespace,
|
113
|
+
"mergeHtml" => @merge_html,
|
101
114
|
"author" => @author,
|
102
115
|
"creationDate" => @creation_date.nil? ? nil : @creation_date.iso8601,
|
103
116
|
"creatorApplication" => @creator_application,
|
@@ -19,6 +19,7 @@ require "cgi"
|
|
19
19
|
require 'txtextcontrol/reportingcloud/template'
|
20
20
|
require 'txtextcontrol/reportingcloud/template_info'
|
21
21
|
require 'txtextcontrol/reportingcloud/account_settings'
|
22
|
+
require 'txtextcontrol/reportingcloud/incorrect_word'
|
22
23
|
require 'txtextcontrol/reportingcloud/find_and_replace_body'
|
23
24
|
require 'txtextcontrol/reportingcloud/template_name_validator'
|
24
25
|
require 'txtextcontrol/reportingcloud/template_data_validator'
|
@@ -341,6 +342,82 @@ module TXTextControl
|
|
341
342
|
end
|
342
343
|
end
|
343
344
|
|
345
|
+
# Checks text for spelling errors.
|
346
|
+
# @param text [String] The text to spell check.
|
347
|
+
# @param language [String] The language that is used to spell check the
|
348
|
+
# specified text.
|
349
|
+
# @return [Array<IncorrectWord>] An array of incorrect words.
|
350
|
+
def check_text(text, language)
|
351
|
+
# Parameter validation
|
352
|
+
unless !text.nil? && !text.to_s.empty?
|
353
|
+
raise ArgumentError, "The given text must not be empty."
|
354
|
+
end
|
355
|
+
unless !language.nil? && !language.to_s.empty?
|
356
|
+
raise ArgumentError, "A language must be defined."
|
357
|
+
end
|
358
|
+
|
359
|
+
# Create query parameters
|
360
|
+
params = {
|
361
|
+
:text => text,
|
362
|
+
:language => language
|
363
|
+
}
|
364
|
+
|
365
|
+
res = request("/proofing/check", :get, params)
|
366
|
+
if res.kind_of? Net::HTTPSuccess
|
367
|
+
incorrect_words = Array.new
|
368
|
+
data = JSON.parse(res.body, object_class: OpenStruct)
|
369
|
+
data.each do |elem|
|
370
|
+
incorrect_words.push(IncorrectWord.from_camelized_hash(elem))
|
371
|
+
end
|
372
|
+
return incorrect_words
|
373
|
+
else
|
374
|
+
raise res.body
|
375
|
+
end
|
376
|
+
end
|
377
|
+
|
378
|
+
# Returns all available dictionary names.
|
379
|
+
# @return [Array<String>] Available dictionary names.
|
380
|
+
def get_available_dictionaries
|
381
|
+
res = request("/proofing/availabledictionaries", :get)
|
382
|
+
if res.kind_of? Net::HTTPSuccess
|
383
|
+
return JSON.parse(res.body)
|
384
|
+
else
|
385
|
+
raise res.body
|
386
|
+
end
|
387
|
+
end
|
388
|
+
|
389
|
+
# Returns suggestions for a misspelled word.
|
390
|
+
# @param word [String] The incorrect word that has to be determined for suggestions.
|
391
|
+
# @param language [String] The language that is used to spell check the specified text.
|
392
|
+
# @param max [Integer] The maximum number of suggestions that has to be determined.
|
393
|
+
# @return [Array<String>] Suggestions for a misspelled word.
|
394
|
+
def get_suggestions(word, language, max)
|
395
|
+
# Parameter validation
|
396
|
+
unless !word.nil? && !word.to_s.empty?
|
397
|
+
raise ArgumentError, "The given text must not be empty."
|
398
|
+
end
|
399
|
+
unless !language.nil? && !language.to_s.empty?
|
400
|
+
raise ArgumentError, "A language must be defined."
|
401
|
+
end
|
402
|
+
unless max.is_a? Integer
|
403
|
+
raise ArgumentError, "max must be an integer"
|
404
|
+
end
|
405
|
+
|
406
|
+
# Create query parameters
|
407
|
+
params = {
|
408
|
+
:word => word,
|
409
|
+
:language => language,
|
410
|
+
:max => max
|
411
|
+
}
|
412
|
+
|
413
|
+
res = request("/proofing/suggestions", :get, params)
|
414
|
+
if res.kind_of? Net::HTTPSuccess
|
415
|
+
return JSON.parse(res.body)
|
416
|
+
else
|
417
|
+
raise res.body
|
418
|
+
end
|
419
|
+
end
|
420
|
+
|
344
421
|
# Performs a HTTP request of a given type.
|
345
422
|
# @param request_type [Symbol] The type of the request. Possible values are +:get+,
|
346
423
|
# +:post+ and +:delete+.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: txtextcontrol-reportingcloud
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thorsten Kummerow
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-08-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -72,6 +72,7 @@ files:
|
|
72
72
|
- lib/txtextcontrol/reportingcloud.rb
|
73
73
|
- lib/txtextcontrol/reportingcloud/account_settings.rb
|
74
74
|
- lib/txtextcontrol/reportingcloud/find_and_replace_body.rb
|
75
|
+
- lib/txtextcontrol/reportingcloud/incorrect_word.rb
|
75
76
|
- lib/txtextcontrol/reportingcloud/merge_block.rb
|
76
77
|
- lib/txtextcontrol/reportingcloud/merge_body.rb
|
77
78
|
- lib/txtextcontrol/reportingcloud/merge_field.rb
|