evernote 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.document +5 -0
- data/.gitignore +5 -0
- data/LICENSE +20 -0
- data/README.mkd +10 -0
- data/Rakefile +46 -0
- data/VERSION +1 -0
- data/evernote.gemspec +83 -0
- data/lib/evernote.rb +7 -0
- data/spec/evernote_spec.rb +7 -0
- data/spec/spec.opts +2 -0
- data/spec/spec_helper.rb +9 -0
- data/vendor/gen-rb/evernote.rb +12 -0
- data/vendor/gen-rb/evernote/edam/errors_types.rb +123 -0
- data/vendor/gen-rb/evernote/edam/limits_constants.rb +187 -0
- data/vendor/gen-rb/evernote/edam/limits_types.rb +13 -0
- data/vendor/gen-rb/evernote/edam/note_store.rb +3834 -0
- data/vendor/gen-rb/evernote/edam/note_store_constants.rb +14 -0
- data/vendor/gen-rb/evernote/edam/note_store_types.rb +571 -0
- data/vendor/gen-rb/evernote/edam/types_constants.rb +20 -0
- data/vendor/gen-rb/evernote/edam/types_types.rb +1533 -0
- data/vendor/gen-rb/evernote/edam/user_store.rb +363 -0
- data/vendor/gen-rb/evernote/edam/user_store_constants.rb +18 -0
- data/vendor/gen-rb/evernote/edam/user_store_types.rb +123 -0
- metadata +108 -0
data/.document
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2009 Chris Sepic
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.mkd
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
# evernote #
|
2
|
+
This gem is a high level wrapper around Evernote's Thrift-generated ruby code. It currently just bundles up Evernote's thrift-generated code. After installing, just require the gem in your project:
|
3
|
+
|
4
|
+
require 'evernote'
|
5
|
+
|
6
|
+
# future releases #
|
7
|
+
This gem will eventually provide a cleaner API around the generated code, so you don't feel like you're writing Java.
|
8
|
+
|
9
|
+
## Copyright ##
|
10
|
+
Copyright (c) 2010 Chris Sepic. See LICENSE for details.
|
data/Rakefile
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'rake'
|
3
|
+
|
4
|
+
begin
|
5
|
+
require 'jeweler'
|
6
|
+
Jeweler::Tasks.new do |gem|
|
7
|
+
gem.name = "evernote"
|
8
|
+
gem.summary = %Q{High level wrapper for the Evernote API}
|
9
|
+
gem.email = "chris.sepic@gmail.com"
|
10
|
+
gem.homepage = "http://github.com/cgs/evernote"
|
11
|
+
gem.authors = ["Chris Sepic"]
|
12
|
+
gem.files.include %w{vendor/**/*}
|
13
|
+
gem.add_dependency("thrift_client")
|
14
|
+
gem.add_development_dependency "rspec"
|
15
|
+
gem.add_development_dependency "yard"
|
16
|
+
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
|
17
|
+
end
|
18
|
+
Jeweler::GemcutterTasks.new
|
19
|
+
rescue LoadError
|
20
|
+
puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
|
21
|
+
end
|
22
|
+
|
23
|
+
require 'spec/rake/spectask'
|
24
|
+
Spec::Rake::SpecTask.new(:spec) do |spec|
|
25
|
+
spec.libs << 'lib' << 'spec'
|
26
|
+
spec.spec_files = FileList['spec/**/*_spec.rb']
|
27
|
+
end
|
28
|
+
|
29
|
+
Spec::Rake::SpecTask.new(:rcov) do |spec|
|
30
|
+
spec.libs << 'lib' << 'spec'
|
31
|
+
spec.pattern = 'spec/**/*_spec.rb'
|
32
|
+
spec.rcov = true
|
33
|
+
end
|
34
|
+
|
35
|
+
task :spec => :check_dependencies
|
36
|
+
|
37
|
+
task :default => :spec
|
38
|
+
|
39
|
+
begin
|
40
|
+
require 'yard'
|
41
|
+
YARD::Rake::YardocTask.new
|
42
|
+
rescue LoadError
|
43
|
+
task :yardoc do
|
44
|
+
abort "YARD is not available. In order to run yardoc, you must: sudo gem install yard"
|
45
|
+
end
|
46
|
+
end
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.1.0
|
data/evernote.gemspec
ADDED
@@ -0,0 +1,83 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = %q{evernote}
|
8
|
+
s.version = "0.1.0"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Chris Sepic"]
|
12
|
+
s.date = %q{2010-01-30}
|
13
|
+
s.email = %q{chris.sepic@gmail.com}
|
14
|
+
s.extra_rdoc_files = [
|
15
|
+
"LICENSE",
|
16
|
+
"README.mkd"
|
17
|
+
]
|
18
|
+
s.files = [
|
19
|
+
".document",
|
20
|
+
".gitignore",
|
21
|
+
"LICENSE",
|
22
|
+
"README.mkd",
|
23
|
+
"Rakefile",
|
24
|
+
"VERSION",
|
25
|
+
"evernote.gemspec",
|
26
|
+
"lib/evernote.rb",
|
27
|
+
"spec/evernote_spec.rb",
|
28
|
+
"spec/spec.opts",
|
29
|
+
"spec/spec_helper.rb",
|
30
|
+
"vendor/gen-rb/evernote.rb",
|
31
|
+
"vendor/gen-rb/evernote.rb",
|
32
|
+
"vendor/gen-rb/evernote/edam/errors_types.rb",
|
33
|
+
"vendor/gen-rb/evernote/edam/errors_types.rb",
|
34
|
+
"vendor/gen-rb/evernote/edam/limits_constants.rb",
|
35
|
+
"vendor/gen-rb/evernote/edam/limits_constants.rb",
|
36
|
+
"vendor/gen-rb/evernote/edam/limits_types.rb",
|
37
|
+
"vendor/gen-rb/evernote/edam/limits_types.rb",
|
38
|
+
"vendor/gen-rb/evernote/edam/note_store.rb",
|
39
|
+
"vendor/gen-rb/evernote/edam/note_store.rb",
|
40
|
+
"vendor/gen-rb/evernote/edam/note_store_constants.rb",
|
41
|
+
"vendor/gen-rb/evernote/edam/note_store_constants.rb",
|
42
|
+
"vendor/gen-rb/evernote/edam/note_store_types.rb",
|
43
|
+
"vendor/gen-rb/evernote/edam/note_store_types.rb",
|
44
|
+
"vendor/gen-rb/evernote/edam/types_constants.rb",
|
45
|
+
"vendor/gen-rb/evernote/edam/types_constants.rb",
|
46
|
+
"vendor/gen-rb/evernote/edam/types_types.rb",
|
47
|
+
"vendor/gen-rb/evernote/edam/types_types.rb",
|
48
|
+
"vendor/gen-rb/evernote/edam/user_store.rb",
|
49
|
+
"vendor/gen-rb/evernote/edam/user_store.rb",
|
50
|
+
"vendor/gen-rb/evernote/edam/user_store_constants.rb",
|
51
|
+
"vendor/gen-rb/evernote/edam/user_store_constants.rb",
|
52
|
+
"vendor/gen-rb/evernote/edam/user_store_types.rb",
|
53
|
+
"vendor/gen-rb/evernote/edam/user_store_types.rb"
|
54
|
+
]
|
55
|
+
s.homepage = %q{http://github.com/cgs/evernote}
|
56
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
57
|
+
s.require_paths = ["lib"]
|
58
|
+
s.rubygems_version = %q{1.3.5}
|
59
|
+
s.summary = %q{High level wrapper for the Evernote API}
|
60
|
+
s.test_files = [
|
61
|
+
"spec/evernote_spec.rb",
|
62
|
+
"spec/spec_helper.rb"
|
63
|
+
]
|
64
|
+
|
65
|
+
if s.respond_to? :specification_version then
|
66
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
67
|
+
s.specification_version = 3
|
68
|
+
|
69
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
70
|
+
s.add_runtime_dependency(%q<thrift_client>, [">= 0"])
|
71
|
+
s.add_development_dependency(%q<rspec>, [">= 0"])
|
72
|
+
s.add_development_dependency(%q<yard>, [">= 0"])
|
73
|
+
else
|
74
|
+
s.add_dependency(%q<thrift_client>, [">= 0"])
|
75
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
76
|
+
s.add_dependency(%q<yard>, [">= 0"])
|
77
|
+
end
|
78
|
+
else
|
79
|
+
s.add_dependency(%q<thrift_client>, [">= 0"])
|
80
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
81
|
+
s.add_dependency(%q<yard>, [">= 0"])
|
82
|
+
end
|
83
|
+
end
|
data/lib/evernote.rb
ADDED
data/spec/spec.opts
ADDED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'set'
|
2
|
+
require 'errors_types'
|
3
|
+
require 'limits_constants'
|
4
|
+
require 'limits_types'
|
5
|
+
require 'note_store'
|
6
|
+
require 'note_store_constants'
|
7
|
+
require 'note_store_types'
|
8
|
+
require 'types_constants'
|
9
|
+
require 'types_types'
|
10
|
+
require 'user_store'
|
11
|
+
require 'user_store_constants'
|
12
|
+
require 'user_store_types'
|
@@ -0,0 +1,123 @@
|
|
1
|
+
#
|
2
|
+
# Autogenerated by Thrift
|
3
|
+
#
|
4
|
+
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
|
5
|
+
#
|
6
|
+
|
7
|
+
|
8
|
+
module Evernote
|
9
|
+
module EDAM
|
10
|
+
module Error
|
11
|
+
module EDAMErrorCode
|
12
|
+
UNKNOWN = 1
|
13
|
+
BAD_DATA_FORMAT = 2
|
14
|
+
PERMISSION_DENIED = 3
|
15
|
+
INTERNAL_ERROR = 4
|
16
|
+
DATA_REQUIRED = 5
|
17
|
+
LIMIT_REACHED = 6
|
18
|
+
QUOTA_REACHED = 7
|
19
|
+
INVALID_AUTH = 8
|
20
|
+
AUTH_EXPIRED = 9
|
21
|
+
DATA_CONFLICT = 10
|
22
|
+
ENML_VALIDATION = 11
|
23
|
+
SHARD_UNAVAILABLE = 12
|
24
|
+
VALUE_MAP = {1 => "UNKNOWN", 2 => "BAD_DATA_FORMAT", 3 => "PERMISSION_DENIED", 4 => "INTERNAL_ERROR", 5 => "DATA_REQUIRED", 6 => "LIMIT_REACHED", 7 => "QUOTA_REACHED", 8 => "INVALID_AUTH", 9 => "AUTH_EXPIRED", 10 => "DATA_CONFLICT", 11 => "ENML_VALIDATION", 12 => "SHARD_UNAVAILABLE"}
|
25
|
+
VALID_VALUES = Set.new([UNKNOWN, BAD_DATA_FORMAT, PERMISSION_DENIED, INTERNAL_ERROR, DATA_REQUIRED, LIMIT_REACHED, QUOTA_REACHED, INVALID_AUTH, AUTH_EXPIRED, DATA_CONFLICT, ENML_VALIDATION, SHARD_UNAVAILABLE]).freeze
|
26
|
+
end
|
27
|
+
|
28
|
+
# This exception is thrown by EDAM procedures when a call fails as a result of
|
29
|
+
# a problem that a user may be able to resolve. For example, if the user
|
30
|
+
# attempts to add a note to their account which would exceed their storage
|
31
|
+
# quota, this type of exception may be thrown to indicate the source of the
|
32
|
+
# error so that they can choose an alternate action.
|
33
|
+
#
|
34
|
+
# This exception would not be used for internal system errors that do not
|
35
|
+
# reflect user actions, but rather reflect a problem within the service that
|
36
|
+
# the user cannot resolve.
|
37
|
+
#
|
38
|
+
# errorCode: The numeric code indicating the type of error that occurred.
|
39
|
+
# must be one of the values of EDAMErrorCode.
|
40
|
+
#
|
41
|
+
# parameter: If the error applied to a particular input parameter, this will
|
42
|
+
# indicate which parameter.
|
43
|
+
class EDAMUserException < ::Thrift::Exception
|
44
|
+
include ::Thrift::Struct
|
45
|
+
ERRORCODE = 1
|
46
|
+
PARAMETER = 2
|
47
|
+
|
48
|
+
::Thrift::Struct.field_accessor self, :errorCode, :parameter
|
49
|
+
FIELDS = {
|
50
|
+
ERRORCODE => {:type => ::Thrift::Types::I32, :name => 'errorCode', :enum_class => Evernote::EDAM::Error::EDAMErrorCode},
|
51
|
+
PARAMETER => {:type => ::Thrift::Types::STRING, :name => 'parameter', :optional => true}
|
52
|
+
}
|
53
|
+
|
54
|
+
def struct_fields; FIELDS; end
|
55
|
+
|
56
|
+
def validate
|
57
|
+
raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field errorCode is unset!') unless @errorCode
|
58
|
+
unless @errorCode.nil? || Evernote::EDAM::Error::EDAMErrorCode::VALID_VALUES.include?(@errorCode)
|
59
|
+
raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field errorCode!')
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
end
|
64
|
+
|
65
|
+
# This exception is thrown by EDAM procedures when a call fails as a result of
|
66
|
+
# an a problem in the service that could not be changed through user action.
|
67
|
+
#
|
68
|
+
# errorCode: The numeric code indicating the type of error that occurred.
|
69
|
+
# must be one of the values of EDAMErrorCode.
|
70
|
+
#
|
71
|
+
# message: This may contain additional information about the error
|
72
|
+
class EDAMSystemException < ::Thrift::Exception
|
73
|
+
include ::Thrift::Struct
|
74
|
+
ERRORCODE = 1
|
75
|
+
MESSAGE = 2
|
76
|
+
|
77
|
+
::Thrift::Struct.field_accessor self, :errorCode, :message
|
78
|
+
FIELDS = {
|
79
|
+
ERRORCODE => {:type => ::Thrift::Types::I32, :name => 'errorCode', :enum_class => Evernote::EDAM::Error::EDAMErrorCode},
|
80
|
+
MESSAGE => {:type => ::Thrift::Types::STRING, :name => 'message', :optional => true}
|
81
|
+
}
|
82
|
+
|
83
|
+
def struct_fields; FIELDS; end
|
84
|
+
|
85
|
+
def validate
|
86
|
+
raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field errorCode is unset!') unless @errorCode
|
87
|
+
unless @errorCode.nil? || Evernote::EDAM::Error::EDAMErrorCode::VALID_VALUES.include?(@errorCode)
|
88
|
+
raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field errorCode!')
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
end
|
93
|
+
|
94
|
+
# This exception is thrown by EDAM procedures when a caller asks to perform
|
95
|
+
# an operation that does not exist. This may be thrown based on an invalid
|
96
|
+
# primary identifier (e.g. a bad GUID), or when the caller refers to an object
|
97
|
+
# by another unique identifier (e.g. a User's email address).
|
98
|
+
#
|
99
|
+
# identifier: the object identifier that was not found on the server.
|
100
|
+
#
|
101
|
+
# key: the value passed from the client in the identifier, which was not
|
102
|
+
# found. E.g. the GUID of an object that was not found.
|
103
|
+
class EDAMNotFoundException < ::Thrift::Exception
|
104
|
+
include ::Thrift::Struct
|
105
|
+
IDENTIFIER = 1
|
106
|
+
KEY = 2
|
107
|
+
|
108
|
+
::Thrift::Struct.field_accessor self, :identifier, :key
|
109
|
+
FIELDS = {
|
110
|
+
IDENTIFIER => {:type => ::Thrift::Types::STRING, :name => 'identifier', :optional => true},
|
111
|
+
KEY => {:type => ::Thrift::Types::STRING, :name => 'key', :optional => true}
|
112
|
+
}
|
113
|
+
|
114
|
+
def struct_fields; FIELDS; end
|
115
|
+
|
116
|
+
def validate
|
117
|
+
end
|
118
|
+
|
119
|
+
end
|
120
|
+
|
121
|
+
end
|
122
|
+
end
|
123
|
+
end
|
@@ -0,0 +1,187 @@
|
|
1
|
+
#
|
2
|
+
# Autogenerated by Thrift
|
3
|
+
#
|
4
|
+
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
|
5
|
+
#
|
6
|
+
|
7
|
+
require 'limits_types'
|
8
|
+
|
9
|
+
module Evernote
|
10
|
+
module EDAM
|
11
|
+
module Limits
|
12
|
+
EDAM_ATTRIBUTE_LEN_MIN = 1
|
13
|
+
|
14
|
+
EDAM_ATTRIBUTE_LEN_MAX = 4096
|
15
|
+
|
16
|
+
EDAM_ATTRIBUTE_REGEX = %q"^[^\\p{Cc}\\p{Zl}\\p{Zp}]{1,4096}$"
|
17
|
+
|
18
|
+
EDAM_ATTRIBUTE_LIST_MAX = 100
|
19
|
+
|
20
|
+
EDAM_GUID_LEN_MIN = 36
|
21
|
+
|
22
|
+
EDAM_GUID_LEN_MAX = 36
|
23
|
+
|
24
|
+
EDAM_GUID_REGEX = %q"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
|
25
|
+
|
26
|
+
EDAM_EMAIL_LEN_MIN = 6
|
27
|
+
|
28
|
+
EDAM_EMAIL_LEN_MAX = 255
|
29
|
+
|
30
|
+
EDAM_EMAIL_LOCAL_REGEX = %q"^[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+(\\.[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+)*$"
|
31
|
+
|
32
|
+
EDAM_EMAIL_DOMAIN_REGEX = %q"^[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*\\.([A-Za-z]{2,})$"
|
33
|
+
|
34
|
+
EDAM_EMAIL_REGEX = %q"^[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+(\\.[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*\\.([A-Za-z]{2,})$"
|
35
|
+
|
36
|
+
EDAM_TIMEZONE_LEN_MIN = 1
|
37
|
+
|
38
|
+
EDAM_TIMEZONE_LEN_MAX = 32
|
39
|
+
|
40
|
+
EDAM_TIMEZONE_REGEX = %q"^([A-Za-z_-]+(/[A-Za-z_-]+)*)|(GMT(-|\\+)[0-9]{1,2}(:[0-9]{2})?)$"
|
41
|
+
|
42
|
+
EDAM_MIME_LEN_MIN = 3
|
43
|
+
|
44
|
+
EDAM_MIME_LEN_MAX = 255
|
45
|
+
|
46
|
+
EDAM_MIME_REGEX = %q"^[A-Za-z]+/[A-Za-z0-9._+-]+$"
|
47
|
+
|
48
|
+
EDAM_MIME_TYPE_GIF = %q"image/gif"
|
49
|
+
|
50
|
+
EDAM_MIME_TYPE_JPEG = %q"image/jpeg"
|
51
|
+
|
52
|
+
EDAM_MIME_TYPE_PNG = %q"image/png"
|
53
|
+
|
54
|
+
EDAM_MIME_TYPE_WAV = %q"audio/wav"
|
55
|
+
|
56
|
+
EDAM_MIME_TYPE_MP3 = %q"audio/mpeg"
|
57
|
+
|
58
|
+
EDAM_MIME_TYPE_AMR = %q"audio/amr"
|
59
|
+
|
60
|
+
EDAM_MIME_TYPE_INK = %q"application/vnd.evernote.ink"
|
61
|
+
|
62
|
+
EDAM_MIME_TYPE_PDF = %q"application/pdf"
|
63
|
+
|
64
|
+
EDAM_MIME_TYPE_DEFAULT = %q"application/octet-stream"
|
65
|
+
|
66
|
+
EDAM_MIME_TYPES = Set.new([
|
67
|
+
%q"image/gif",
|
68
|
+
%q"image/jpeg",
|
69
|
+
%q"image/png",
|
70
|
+
%q"audio/wav",
|
71
|
+
%q"audio/mpeg",
|
72
|
+
%q"audio/amr",
|
73
|
+
%q"application/vnd.evernote.ink",
|
74
|
+
%q"application/pdf",
|
75
|
+
])
|
76
|
+
|
77
|
+
EDAM_COMMERCE_SERVICE_GOOGLE = %q"Google"
|
78
|
+
|
79
|
+
EDAM_COMMERCE_SERVICE_PAYPAL = %q"Paypal"
|
80
|
+
|
81
|
+
EDAM_COMMERCE_SERVICE_GIFT = %q"Gift"
|
82
|
+
|
83
|
+
EDAM_COMMERCE_SERVICE_TRIALPAY = %q"TrialPay"
|
84
|
+
|
85
|
+
EDAM_SEARCH_QUERY_LEN_MIN = 0
|
86
|
+
|
87
|
+
EDAM_SEARCH_QUERY_LEN_MAX = 1024
|
88
|
+
|
89
|
+
EDAM_SEARCH_QUERY_REGEX = %q"^[^\\p{Cc}\\p{Zl}\\p{Zp}]{0,1024}$"
|
90
|
+
|
91
|
+
EDAM_HASH_LEN = 16
|
92
|
+
|
93
|
+
EDAM_USER_USERNAME_LEN_MIN = 1
|
94
|
+
|
95
|
+
EDAM_USER_USERNAME_LEN_MAX = 64
|
96
|
+
|
97
|
+
EDAM_USER_USERNAME_REGEX = %q"^[a-z0-9]([a-z0-9_-]{0,62}[a-z0-9])?$"
|
98
|
+
|
99
|
+
EDAM_USER_NAME_LEN_MIN = 1
|
100
|
+
|
101
|
+
EDAM_USER_NAME_LEN_MAX = 255
|
102
|
+
|
103
|
+
EDAM_USER_NAME_REGEX = %q"^[^\\p{Cc}\\p{Zl}\\p{Zp}]{1,255}$"
|
104
|
+
|
105
|
+
EDAM_TAG_NAME_LEN_MIN = 1
|
106
|
+
|
107
|
+
EDAM_TAG_NAME_LEN_MAX = 100
|
108
|
+
|
109
|
+
EDAM_TAG_NAME_REGEX = %q"^[^,\\p{Cc}\\p{Z}]([^,\\p{Cc}\\p{Zl}\\p{Zp}]{0,98}[^,\\p{Cc}\\p{Z}])?$"
|
110
|
+
|
111
|
+
EDAM_NOTE_TITLE_LEN_MIN = 1
|
112
|
+
|
113
|
+
EDAM_NOTE_TITLE_LEN_MAX = 255
|
114
|
+
|
115
|
+
EDAM_NOTE_TITLE_REGEX = %q"^[^\\p{Cc}\\p{Z}]([^\\p{Cc}\\p{Zl}\\p{Zp}]{0,253}[^\\p{Cc}\\p{Z}])?$"
|
116
|
+
|
117
|
+
EDAM_NOTE_CONTENT_LEN_MIN = 0
|
118
|
+
|
119
|
+
EDAM_NOTE_CONTENT_LEN_MAX = 5242880
|
120
|
+
|
121
|
+
EDAM_NOTEBOOK_NAME_LEN_MIN = 1
|
122
|
+
|
123
|
+
EDAM_NOTEBOOK_NAME_LEN_MAX = 100
|
124
|
+
|
125
|
+
EDAM_NOTEBOOK_NAME_REGEX = %q"^[^\\p{Cc}\\p{Z}]([^\\p{Cc}\\p{Zl}\\p{Zp}]{0,98}[^\\p{Cc}\\p{Z}])?$"
|
126
|
+
|
127
|
+
EDAM_PUBLISHING_URI_LEN_MIN = 1
|
128
|
+
|
129
|
+
EDAM_PUBLISHING_URI_LEN_MAX = 255
|
130
|
+
|
131
|
+
EDAM_PUBLISHING_URI_REGEX = %q"^[a-zA-Z0-9.~_+-]{1,255}$"
|
132
|
+
|
133
|
+
EDAM_PUBLISHING_URI_PROHIBITED = Set.new([
|
134
|
+
%q"..",
|
135
|
+
])
|
136
|
+
|
137
|
+
EDAM_PUBLISHING_DESCRIPTION_LEN_MIN = 1
|
138
|
+
|
139
|
+
EDAM_PUBLISHING_DESCRIPTION_LEN_MAX = 200
|
140
|
+
|
141
|
+
EDAM_PUBLISHING_DESCRIPTION_REGEX = %q"^[^\\p{Cc}\\p{Z}]([^\\p{Cc}\\p{Zl}\\p{Zp}]{0,198}[^\\p{Cc}\\p{Z}])?$"
|
142
|
+
|
143
|
+
EDAM_SAVED_SEARCH_NAME_LEN_MIN = 1
|
144
|
+
|
145
|
+
EDAM_SAVED_SEARCH_NAME_LEN_MAX = 100
|
146
|
+
|
147
|
+
EDAM_SAVED_SEARCH_NAME_REGEX = %q"^[^\\p{Cc}\\p{Z}]([^\\p{Cc}\\p{Zl}\\p{Zp}]{0,98}[^\\p{Cc}\\p{Z}])?$"
|
148
|
+
|
149
|
+
EDAM_USER_PASSWORD_LEN_MIN = 6
|
150
|
+
|
151
|
+
EDAM_USER_PASSWORD_LEN_MAX = 64
|
152
|
+
|
153
|
+
EDAM_USER_PASSWORD_REGEX = %q"^[A-Za-z0-9!#$%&'()*+,./:;<=>?@^_`{|}~\\[\\]\\\\-]{6,64}$"
|
154
|
+
|
155
|
+
EDAM_NOTE_TAGS_MAX = 100
|
156
|
+
|
157
|
+
EDAM_NOTE_RESOURCES_MAX = 1000
|
158
|
+
|
159
|
+
EDAM_USER_TAGS_MAX = 100000
|
160
|
+
|
161
|
+
EDAM_USER_SAVED_SEARCHES_MAX = 100
|
162
|
+
|
163
|
+
EDAM_USER_NOTES_MAX = 100000
|
164
|
+
|
165
|
+
EDAM_USER_NOTEBOOKS_MAX = 100
|
166
|
+
|
167
|
+
EDAM_USER_RECENT_MAILED_ADDRESSES_MAX = 10
|
168
|
+
|
169
|
+
EDAM_USER_MAIL_LIMIT_DAILY_FREE = 50
|
170
|
+
|
171
|
+
EDAM_USER_MAIL_LIMIT_DAILY_PREMIUM = 200
|
172
|
+
|
173
|
+
EDAM_NOTE_SIZE_MAX_FREE = 26214400
|
174
|
+
|
175
|
+
EDAM_NOTE_SIZE_MAX_PREMIUM = 52428800
|
176
|
+
|
177
|
+
EDAM_RESOURCE_SIZE_MAX_FREE = 26214400
|
178
|
+
|
179
|
+
EDAM_RESOURCE_SIZE_MAX_PREMIUM = 52428800
|
180
|
+
|
181
|
+
EDAM_USER_LINKED_NOTEBOOK_MAX = 100
|
182
|
+
|
183
|
+
EDAM_NOTEBOOK_SHARED_NOTEBOOK_MAX = 100
|
184
|
+
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|