everyday-menu 1.3.5 → 1.3.6
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.
- checksums.yaml +4 -4
- data/.gitignore +1 -5
- data/Gemfile +1 -1
- data/everyday-menu.gemspec +3 -3
- data/lib/everyday-menu.rb +3 -3
- data/lib/everyday-menu/utils.rb +8 -8
- data/lib/everyday-menu/version.rb +1 -1
- data/vendor/MD5SHA1Digest/NSData+MD5Digest.h +18 -0
- data/vendor/MD5SHA1Digest/NSData+MD5Digest.m +40 -0
- data/vendor/MD5SHA1Digest/NSData+SHA1Digest.h +19 -0
- data/vendor/MD5SHA1Digest/NSData+SHA1Digest.m +40 -0
- data/vendor/MD5SHA1Digest/NSData+SHA256Digest.h +16 -0
- data/vendor/MD5SHA1Digest/NSData+SHA256Digest.m +38 -0
- metadata +12 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fbeebf51707a98f36e409ae30e849588db3fef2a
|
4
|
+
data.tar.gz: 6bbb05135928f8ed25da6d141c42ddc1bb42c9b3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3b7a2426c808d2baaa7f32e2bb8fbedf2545191229f4d23c2a5827816b2b41f82f2a83be00a124b81fd3300d98bce3e8122a61a0b8780534aeb53e39a268ecad
|
7
|
+
data.tar.gz: 7b37c01163abfc5eeb78b025d76c1e2f1d06dd314d398b275ec450d5574701cabd5dfc9cbeb26d6e04cd0befe3317791306b862fa085a989f8497405c4a56462
|
data/.gitignore
CHANGED
data/Gemfile
CHANGED
data/everyday-menu.gemspec
CHANGED
@@ -17,10 +17,10 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
18
18
|
spec.require_paths = ['lib']
|
19
19
|
|
20
|
-
spec.add_development_dependency 'bundler', '~> 1.
|
21
|
-
spec.add_development_dependency 'rake', '~> 10.
|
20
|
+
spec.add_development_dependency 'bundler', '~> 1.7'
|
21
|
+
spec.add_development_dependency 'rake', '~> 10.3'
|
22
22
|
#spec.add_development_dependency 'simplecov', '>= 0.8.2'
|
23
23
|
#spec.add_development_dependency 'coveralls', '>= 0.7.0'
|
24
24
|
|
25
|
-
spec.add_dependency 'rm-digest'
|
25
|
+
# spec.add_dependency 'rm-digest'
|
26
26
|
end
|
data/lib/everyday-menu.rb
CHANGED
@@ -1,6 +1,3 @@
|
|
1
|
-
require 'rm-digest'
|
2
|
-
require 'rm-digest/md5'
|
3
|
-
|
4
1
|
unless defined?(Motion::Project::Config)
|
5
2
|
raise 'The everyday-menu gem must be required within a RubyMotion project Rakefile.'
|
6
3
|
end
|
@@ -9,4 +6,7 @@ Motion::Project::App.setup do |app|
|
|
9
6
|
Dir.glob(File.join(File.dirname(__FILE__), 'everyday-menu/**/*.rb')).each do |file|
|
10
7
|
app.files.unshift(file)
|
11
8
|
end
|
9
|
+
|
10
|
+
digest_vendor = File.expand_path(File.join(File.dirname(__FILE__), '../vendor/MD5SHA1Digest'))
|
11
|
+
app.vendor_project(digest_vendor, :static)
|
12
12
|
end
|
data/lib/everyday-menu/utils.rb
CHANGED
@@ -1,7 +1,3 @@
|
|
1
|
-
class EverydayRmDigest
|
2
|
-
include RmDigest
|
3
|
-
end
|
4
|
-
|
5
1
|
module EverydayMenu
|
6
2
|
class EverydayCommand
|
7
3
|
attr_reader :label, :parent, :command_id
|
@@ -40,8 +36,12 @@ module EverydayMenu
|
|
40
36
|
@rand = Random.new
|
41
37
|
end
|
42
38
|
|
39
|
+
def md5(str)
|
40
|
+
str.dataUsingEncoding(NSUTF8StringEncoding).MD5HexDigest
|
41
|
+
end
|
42
|
+
|
43
43
|
def unique_id
|
44
|
-
|
44
|
+
md5(WeakRef.new("#{@rand.rand}#{@rand.rand}"))
|
45
45
|
end
|
46
46
|
|
47
47
|
def rand_id
|
@@ -103,12 +103,12 @@ module EverydayMenu
|
|
103
103
|
end
|
104
104
|
|
105
105
|
def self.key_to_name(key, prefix = nil)
|
106
|
-
rval = WeakRef.new(WeakRef.new(key.to_s).gsub(/_(\w)/) { |_| $1.upcase })
|
107
|
-
prefix.nil? ? rval : WeakRef.new("#{prefix}#{rval[0].upcase}#{rval[1..-1]}")
|
106
|
+
rval = WeakRef.new(WeakRef.new(key.to_s).gsub(/_(\w)/) { |_| WeakRef.new(WeakRef.new($1).upcase) })
|
107
|
+
prefix.nil? ? rval : WeakRef.new("#{prefix}#{WeakRef.new(WeakRef.new(rval[0]).upcase)}#{WeakRef.new(rval[1..-1])}")
|
108
108
|
end
|
109
109
|
|
110
110
|
def self.name_to_key(name)
|
111
|
-
WeakRef.new(WeakRef.new(name.to_s).gsub(/A-Z/) { |c| c.downcase }).to_sym
|
111
|
+
WeakRef.new(WeakRef.new(name.to_s).gsub(/A-Z/) { |c| WeakRef.new(WeakRef.new(c).downcase) }).to_sym
|
112
112
|
end
|
113
113
|
|
114
114
|
def self.getter_names(name)
|
@@ -0,0 +1,18 @@
|
|
1
|
+
//
|
2
|
+
// NSData+MD5Digest.h
|
3
|
+
// MD5SHA1Digest
|
4
|
+
//
|
5
|
+
// Created by Tom Meinlschmidt on 28.2.2013.
|
6
|
+
// Copyright (c) 2013 Tom Meinlschmidt. All rights reserved.
|
7
|
+
//
|
8
|
+
#import <Foundation/Foundation.h>
|
9
|
+
|
10
|
+
@interface NSData (MD5Digest)
|
11
|
+
|
12
|
+
+(NSData *)MD5Digest:(NSData *)input;
|
13
|
+
-(NSData *)MD5Digest;
|
14
|
+
|
15
|
+
+(NSString *)MD5HexDigest:(NSData *)input;
|
16
|
+
-(NSString *)MD5HexDigest;
|
17
|
+
|
18
|
+
@end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
//
|
2
|
+
// NSData+MD5Digest.m
|
3
|
+
// MD5SHA1Digest
|
4
|
+
//
|
5
|
+
// Created by Tom Meinlschmidt on 28.2.2013.
|
6
|
+
// Copyright (c) 2013 Tom Meinlschmidt. All rights reserved.
|
7
|
+
//
|
8
|
+
|
9
|
+
#import "NSData+MD5Digest.h"
|
10
|
+
#import <CommonCrypto/CommonDigest.h>
|
11
|
+
|
12
|
+
@implementation NSData (MD5)
|
13
|
+
|
14
|
+
+(NSData *)MD5Digest:(NSData *)input {
|
15
|
+
unsigned char result[CC_MD5_DIGEST_LENGTH];
|
16
|
+
|
17
|
+
CC_MD5(input.bytes, input.length, result);
|
18
|
+
return [[NSData alloc] initWithBytes:result length:CC_MD5_DIGEST_LENGTH];
|
19
|
+
}
|
20
|
+
|
21
|
+
-(NSData *)MD5Digest {
|
22
|
+
return [NSData MD5Digest:self];
|
23
|
+
}
|
24
|
+
|
25
|
+
+(NSString *)MD5HexDigest:(NSData *)input {
|
26
|
+
unsigned char result[CC_MD5_DIGEST_LENGTH];
|
27
|
+
|
28
|
+
CC_MD5(input.bytes, input.length, result);
|
29
|
+
NSMutableString *ret = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH*2];
|
30
|
+
for (int i = 0; i<CC_MD5_DIGEST_LENGTH; i++) {
|
31
|
+
[ret appendFormat:@"%02x",result[i]];
|
32
|
+
}
|
33
|
+
return ret;
|
34
|
+
}
|
35
|
+
|
36
|
+
-(NSString *)MD5HexDigest {
|
37
|
+
return [NSData MD5HexDigest:self];
|
38
|
+
}
|
39
|
+
|
40
|
+
@end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
//
|
2
|
+
// NSData+SHA1Digest.h
|
3
|
+
// MD5SHA1Digest
|
4
|
+
//
|
5
|
+
// Created by Tom Meinlschmidt on 28.2.2013.
|
6
|
+
// Copyright (c) 2013 Tom Meinlschmidt. All rights reserved.
|
7
|
+
//
|
8
|
+
|
9
|
+
#import <Foundation/Foundation.h>
|
10
|
+
|
11
|
+
@interface NSData (SHA1Digest)
|
12
|
+
|
13
|
+
+(NSData *)SHA1Digest:(NSData *)input;
|
14
|
+
-(NSData *)SHA1Digest;
|
15
|
+
|
16
|
+
+(NSString *)SHA1HexDigest:(NSData *)input;
|
17
|
+
-(NSString *)SHA1HexDigest;
|
18
|
+
|
19
|
+
@end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
//
|
2
|
+
// NSData+SHA1Digest.m
|
3
|
+
// MD5SHA1Digest
|
4
|
+
//
|
5
|
+
// Created by Tom Meinlschmidt on 28.2.2013.
|
6
|
+
// Copyright (c) 2013 Tom Meinlschmidt. All rights reserved.
|
7
|
+
//
|
8
|
+
|
9
|
+
#import "NSData+SHA1Digest.h"
|
10
|
+
#import <CommonCrypto/CommonDigest.h>
|
11
|
+
|
12
|
+
@implementation NSData (SHA1)
|
13
|
+
|
14
|
+
+(NSData *)SHA1Digest:(NSData *)input {
|
15
|
+
unsigned char result[CC_SHA1_DIGEST_LENGTH];
|
16
|
+
|
17
|
+
CC_SHA1(input.bytes, input.length, result);
|
18
|
+
return [[NSData alloc] initWithBytes:result length:CC_SHA1_DIGEST_LENGTH];
|
19
|
+
}
|
20
|
+
|
21
|
+
-(NSData *)SHA1Digest {
|
22
|
+
return [NSData SHA1Digest:self];
|
23
|
+
}
|
24
|
+
|
25
|
+
+(NSString *)SHA1HexDigest:(NSData *)input {
|
26
|
+
unsigned char result[CC_SHA1_DIGEST_LENGTH];
|
27
|
+
|
28
|
+
CC_SHA1(input.bytes, input.length, result);
|
29
|
+
NSMutableString *ret = [NSMutableString stringWithCapacity:CC_SHA1_DIGEST_LENGTH*2];
|
30
|
+
for (int i = 0; i<CC_SHA1_DIGEST_LENGTH; i++) {
|
31
|
+
[ret appendFormat:@"%02x",result[i]];
|
32
|
+
}
|
33
|
+
return ret;
|
34
|
+
}
|
35
|
+
|
36
|
+
-(NSString *)SHA1HexDigest {
|
37
|
+
return [NSData SHA1HexDigest:self];
|
38
|
+
}
|
39
|
+
|
40
|
+
@end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
//
|
2
|
+
// NSData+SHA1Digest.h
|
3
|
+
// MD5SHA1Digest
|
4
|
+
//
|
5
|
+
|
6
|
+
#import <Foundation/Foundation.h>
|
7
|
+
|
8
|
+
@interface NSData (SHA256Digest)
|
9
|
+
|
10
|
+
+(NSData *)SHA256Digest:(NSData *)input;
|
11
|
+
-(NSData *)SHA256Digest;
|
12
|
+
|
13
|
+
+(NSString *)SHA256HexDigest:(NSData *)input;
|
14
|
+
-(NSString *)SHA256HexDigest;
|
15
|
+
|
16
|
+
@end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
//
|
2
|
+
// NSData+SHA256Digest.m
|
3
|
+
// MD5SHA1Digest
|
4
|
+
//
|
5
|
+
//
|
6
|
+
|
7
|
+
#import "NSData+SHA256Digest.h"
|
8
|
+
#import <CommonCrypto/CommonDigest.h>
|
9
|
+
|
10
|
+
@implementation NSData (SHA256)
|
11
|
+
|
12
|
+
+(NSData *)SHA256Digest:(NSData *)input {
|
13
|
+
unsigned char result[CC_SHA256_DIGEST_LENGTH];
|
14
|
+
|
15
|
+
CC_SHA256(input.bytes, input.length, result);
|
16
|
+
return [[NSData alloc] initWithBytes:result length:CC_SHA256_DIGEST_LENGTH];
|
17
|
+
}
|
18
|
+
|
19
|
+
-(NSData *)SHA256Digest {
|
20
|
+
return [NSData SHA256Digest:self];
|
21
|
+
}
|
22
|
+
|
23
|
+
+(NSString *)SHA256HexDigest:(NSData *)input {
|
24
|
+
unsigned char result[CC_SHA256_DIGEST_LENGTH];
|
25
|
+
|
26
|
+
CC_SHA256(input.bytes, input.length, result);
|
27
|
+
NSMutableString *ret = [NSMutableString stringWithCapacity:CC_SHA256_DIGEST_LENGTH*2];
|
28
|
+
for (int i = 0; i<CC_SHA256_DIGEST_LENGTH; i++) {
|
29
|
+
[ret appendFormat:@"%02x",result[i]];
|
30
|
+
}
|
31
|
+
return ret;
|
32
|
+
}
|
33
|
+
|
34
|
+
-(NSString *)SHA256HexDigest {
|
35
|
+
return [NSData SHA256HexDigest:self];
|
36
|
+
}
|
37
|
+
|
38
|
+
@end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: everyday-menu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eric Henderson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-09-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -16,42 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '1.
|
19
|
+
version: '1.7'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '1.
|
26
|
+
version: '1.7'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '10.
|
33
|
+
version: '10.3'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '10.
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: rm-digest
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - ">="
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
|
-
type: :runtime
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ">="
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
40
|
+
version: '10.3'
|
55
41
|
description: An easy way to define menu items and visually lay out menus for your
|
56
42
|
RubyMotion OSX apps. Based on the drink-menu gem that I couldn't get to work for
|
57
43
|
me.
|
@@ -81,6 +67,12 @@ files:
|
|
81
67
|
- spec/menu_builder_spec.rb
|
82
68
|
- spec/menu_item_spec.rb
|
83
69
|
- spec/menu_spec.rb
|
70
|
+
- vendor/MD5SHA1Digest/NSData+MD5Digest.h
|
71
|
+
- vendor/MD5SHA1Digest/NSData+MD5Digest.m
|
72
|
+
- vendor/MD5SHA1Digest/NSData+SHA1Digest.h
|
73
|
+
- vendor/MD5SHA1Digest/NSData+SHA1Digest.m
|
74
|
+
- vendor/MD5SHA1Digest/NSData+SHA256Digest.h
|
75
|
+
- vendor/MD5SHA1Digest/NSData+SHA256Digest.m
|
84
76
|
homepage: https://github.com/henderea/everyday-menu
|
85
77
|
licenses:
|
86
78
|
- MIT
|