coherent 0.2.1 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +2 -1
- data/VERSION +1 -1
- data/bin/coherent +1 -1
- data/coherent.gemspec +21 -2
- data/demo_generators/gallery/USAGE +5 -0
- data/demo_generators/gallery/gallery_generator.rb +67 -0
- data/demo_generators/gallery/templates/distil.yml.erb +51 -0
- data/demo_generators/gallery/templates/src/NOTICE.erb +2 -0
- data/demo_generators/gallery/templates/src/css/@name@.css.erb +120 -0
- data/demo_generators/gallery/templates/src/css/reset.css +70 -0
- data/demo_generators/gallery/templates/src/js/@name@.js.erb +5 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/@name@.css +116 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/@name@.html +6 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/@name@.jsnib.erb +40 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/@name@.json +25 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/images/next.gif +0 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/images/prev.gif +0 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/photos/molly-1.jpg +0 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/photos/molly-2.jpg +0 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/photos/molly-3.jpg +0 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/photos/molly-4.jpg +0 -0
- data/demo_generators/gallery/templates/src/nibs/@name@/photos/molly-5.jpg +0 -0
- data/demo_generators/gallery/templates/src/pages/index.html.erb +14 -0
- data/lib/coherent.rb +1 -1
- metadata +21 -2
data/Rakefile
CHANGED
@@ -10,7 +10,8 @@ begin
|
|
10
10
|
gem.email = "jeff@metrocat.org"
|
11
11
|
gem.homepage = "http://coherentjs.org"
|
12
12
|
gem.authors = ["Jeff Watkins"]
|
13
|
-
gem.files= Dir['lib/**/*', 'app_generators/**/*', 'generators/**/*',
|
13
|
+
gem.files= Dir['lib/**/*', 'app_generators/**/*', 'generators/**/*',
|
14
|
+
'demo_generators/**/*', 'bin/*', '[A-Za-z]*', 'vendor/**/*']
|
14
15
|
gem.files.reject! { |f| File.directory?(f) }
|
15
16
|
gem.add_dependency('distil', '>= 0.8.4')
|
16
17
|
gem.add_dependency('rubigen', '>= 1.5.2')
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.3.0
|
data/bin/coherent
CHANGED
data/coherent.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{coherent}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.3.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Jeff Watkins"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-02-18}
|
13
13
|
s.default_executable = %q{coherent}
|
14
14
|
s.description = %q{Tools for building Coherent application or modules.}
|
15
15
|
s.email = %q{jeff@metrocat.org}
|
@@ -33,6 +33,25 @@ Gem::Specification.new do |s|
|
|
33
33
|
"app_generators/coherent/templates/src/pages/index.html.erb",
|
34
34
|
"bin/coherent",
|
35
35
|
"coherent.gemspec",
|
36
|
+
"demo_generators/gallery/USAGE",
|
37
|
+
"demo_generators/gallery/gallery_generator.rb",
|
38
|
+
"demo_generators/gallery/templates/distil.yml.erb",
|
39
|
+
"demo_generators/gallery/templates/src/NOTICE.erb",
|
40
|
+
"demo_generators/gallery/templates/src/css/@name@.css.erb",
|
41
|
+
"demo_generators/gallery/templates/src/css/reset.css",
|
42
|
+
"demo_generators/gallery/templates/src/js/@name@.js.erb",
|
43
|
+
"demo_generators/gallery/templates/src/nibs/@name@/@name@.css",
|
44
|
+
"demo_generators/gallery/templates/src/nibs/@name@/@name@.html",
|
45
|
+
"demo_generators/gallery/templates/src/nibs/@name@/@name@.jsnib.erb",
|
46
|
+
"demo_generators/gallery/templates/src/nibs/@name@/@name@.json",
|
47
|
+
"demo_generators/gallery/templates/src/nibs/@name@/images/next.gif",
|
48
|
+
"demo_generators/gallery/templates/src/nibs/@name@/images/prev.gif",
|
49
|
+
"demo_generators/gallery/templates/src/nibs/@name@/photos/molly-1.jpg",
|
50
|
+
"demo_generators/gallery/templates/src/nibs/@name@/photos/molly-2.jpg",
|
51
|
+
"demo_generators/gallery/templates/src/nibs/@name@/photos/molly-3.jpg",
|
52
|
+
"demo_generators/gallery/templates/src/nibs/@name@/photos/molly-4.jpg",
|
53
|
+
"demo_generators/gallery/templates/src/nibs/@name@/photos/molly-5.jpg",
|
54
|
+
"demo_generators/gallery/templates/src/pages/index.html.erb",
|
36
55
|
"generators/class/USAGE",
|
37
56
|
"generators/class/class_generator.rb",
|
38
57
|
"generators/class/templates/@name@.js.erb",
|
@@ -0,0 +1,67 @@
|
|
1
|
+
require "#{File.dirname(__FILE__)}/../../lib/coherent"
|
2
|
+
|
3
|
+
class GalleryGenerator < CoherentBaseGenerator
|
4
|
+
|
5
|
+
DEFAULT_SHEBANG = File.join(Config::CONFIG['bindir'],
|
6
|
+
Config::CONFIG['ruby_install_name'])
|
7
|
+
|
8
|
+
COHERENT_URL = ""
|
9
|
+
COHERENT_FOLDER = "ext/coherent"
|
10
|
+
|
11
|
+
default_options :author => nil
|
12
|
+
|
13
|
+
attr_reader :name, :nib_name
|
14
|
+
|
15
|
+
def initialize(runtime_args, runtime_options = {})
|
16
|
+
super
|
17
|
+
usage if args.empty?
|
18
|
+
@destination_root = File.expand_path(args.shift)
|
19
|
+
@name = base_name
|
20
|
+
extract_options
|
21
|
+
end
|
22
|
+
|
23
|
+
def manifest
|
24
|
+
record do |m|
|
25
|
+
# Ensure appropriate folder(s) exists
|
26
|
+
m.directory ''
|
27
|
+
BASEDIRS.each { |path| m.directory path }
|
28
|
+
|
29
|
+
copy_template_folder m
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
protected
|
34
|
+
def banner
|
35
|
+
<<-EOS
|
36
|
+
Creates a ...
|
37
|
+
|
38
|
+
USAGE: #{spec.name} name
|
39
|
+
EOS
|
40
|
+
end
|
41
|
+
|
42
|
+
def add_options!(opts)
|
43
|
+
opts.separator ''
|
44
|
+
opts.separator 'Options:'
|
45
|
+
# For each option below, place the default
|
46
|
+
# at the top of the file next to "default_options"
|
47
|
+
# opts.on("-a", "--author=\"Your Name\"", String,
|
48
|
+
# "Some comment about this option",
|
49
|
+
# "Default: none") { |o| options[:author] = o }
|
50
|
+
opts.on("-v", "--version", "Show the #{File.basename($0)} version number and quit.")
|
51
|
+
end
|
52
|
+
|
53
|
+
def extract_options
|
54
|
+
# for each option, extract it into a local variable (and create an "attr_reader :author" at the top)
|
55
|
+
# Templates can access these value via the attr_reader-generated methods, but not the
|
56
|
+
# raw instance variable value.
|
57
|
+
# @author = options[:author]
|
58
|
+
@nib_name= options[:nib_name]
|
59
|
+
end
|
60
|
+
|
61
|
+
# Installation skeleton. Intermediate directories are automatically
|
62
|
+
# created so don't sweat their absence here.
|
63
|
+
BASEDIRS = %w(
|
64
|
+
src
|
65
|
+
test
|
66
|
+
)
|
67
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
name: <%=name%>
|
2
|
+
version: 1.0.0
|
3
|
+
notice: src/NOTICE
|
4
|
+
output folder: build/res/latest
|
5
|
+
|
6
|
+
# When copying or linking to the source in the build, remove this folder prefix
|
7
|
+
# before copying or linking.
|
8
|
+
remove prefix: src
|
9
|
+
|
10
|
+
# Need to include the coherent extensions for Distil.
|
11
|
+
distilery: coherent
|
12
|
+
|
13
|
+
# Set up external projects.
|
14
|
+
external projects:
|
15
|
+
ext/coherent: http://coherent.googlecode.com/svn/trunk
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
# This is the main target for your application. This target will yield optimised
|
20
|
+
# CSS and Javascript files for all of your assets. In addition, it will emit
|
21
|
+
# uncompressed and debug versions which are useful during development.
|
22
|
+
all:
|
23
|
+
js:
|
24
|
+
# Your main Javascript assets, specified in order they should be loaded.
|
25
|
+
# The final entry loads all Javascript assets in the src/js folder and
|
26
|
+
# uses the import statements to compute the dependency order.
|
27
|
+
- coherent-uncompressed.js
|
28
|
+
- src/js/<%=name%>.js
|
29
|
+
- src/js
|
30
|
+
|
31
|
+
css:
|
32
|
+
# Your CSS files. You may include all CSS files in the src/css folder,
|
33
|
+
# but they may be included in the wrong order. So it's usually best to
|
34
|
+
# specify them explicitly
|
35
|
+
- src/css/reset.css
|
36
|
+
- src/css/<%=name%>.js
|
37
|
+
|
38
|
+
jsnib:
|
39
|
+
# Create a JSNIB package file for each folder in the src/nibs folder.
|
40
|
+
# A JSNIB package is a self contained group of Javascript, CSS and HTML
|
41
|
+
# that is used to provide loadable UI modules.
|
42
|
+
remove prefix: src/nibs
|
43
|
+
include: src/nibs
|
44
|
+
|
45
|
+
pages:
|
46
|
+
# Copy any HTML assets from the src/pages folder over to the build folder.
|
47
|
+
# If you're using a server framework, you should consider simply deleting
|
48
|
+
# this target.
|
49
|
+
output folder: build
|
50
|
+
remove prefix: src/pages
|
51
|
+
copy: src/pages
|
@@ -0,0 +1,120 @@
|
|
1
|
+
/* This is the primary CSS file for the <%=name.titlecase%> application. */
|
2
|
+
|
3
|
+
/* Styles for UI elements that have been selected.
|
4
|
+
*/
|
5
|
+
.selected
|
6
|
+
{
|
7
|
+
}
|
8
|
+
|
9
|
+
/* Styles applied to views that are disabled. Not all browsers support the
|
10
|
+
disabled pseudo selector, so Coherent applies the disabled class instead.
|
11
|
+
*/
|
12
|
+
.disabled
|
13
|
+
{
|
14
|
+
}
|
15
|
+
|
16
|
+
/* Views that are read-only will have these styles.
|
17
|
+
*/
|
18
|
+
.read-only
|
19
|
+
{
|
20
|
+
}
|
21
|
+
|
22
|
+
/* When a view is displaying the placeholder value for a null value, the view
|
23
|
+
will have this class name.
|
24
|
+
*/
|
25
|
+
.nullValue
|
26
|
+
{
|
27
|
+
}
|
28
|
+
|
29
|
+
/* Since not all browsers support the focus pseudo selector, Coherent applies
|
30
|
+
the focused class to all views that accept first responder status.
|
31
|
+
*/
|
32
|
+
.focused
|
33
|
+
{
|
34
|
+
}
|
35
|
+
|
36
|
+
.hover
|
37
|
+
{
|
38
|
+
}
|
39
|
+
|
40
|
+
.asc
|
41
|
+
{
|
42
|
+
}
|
43
|
+
|
44
|
+
.desc
|
45
|
+
{
|
46
|
+
}
|
47
|
+
|
48
|
+
.active
|
49
|
+
{
|
50
|
+
}
|
51
|
+
|
52
|
+
.updating
|
53
|
+
{
|
54
|
+
}
|
55
|
+
|
56
|
+
.invisible
|
57
|
+
{
|
58
|
+
}
|
59
|
+
|
60
|
+
.invalid
|
61
|
+
{
|
62
|
+
}
|
63
|
+
|
64
|
+
.inserted
|
65
|
+
{
|
66
|
+
}
|
67
|
+
|
68
|
+
.deleted
|
69
|
+
{
|
70
|
+
}
|
71
|
+
|
72
|
+
.replacing
|
73
|
+
{
|
74
|
+
}
|
75
|
+
|
76
|
+
.loading
|
77
|
+
{
|
78
|
+
}
|
79
|
+
|
80
|
+
.first
|
81
|
+
{
|
82
|
+
}
|
83
|
+
|
84
|
+
.last
|
85
|
+
{
|
86
|
+
}
|
87
|
+
|
88
|
+
.drag-and-drop-copy
|
89
|
+
{
|
90
|
+
}
|
91
|
+
|
92
|
+
.drag-and-drop-move
|
93
|
+
{
|
94
|
+
}
|
95
|
+
|
96
|
+
.drag-and-drop-link
|
97
|
+
{
|
98
|
+
}
|
99
|
+
|
100
|
+
.drag-and-drop-no
|
101
|
+
{
|
102
|
+
}
|
103
|
+
|
104
|
+
.coherent_windowInactive
|
105
|
+
{
|
106
|
+
}
|
107
|
+
|
108
|
+
.outline-expanded
|
109
|
+
{
|
110
|
+
}
|
111
|
+
|
112
|
+
.outline-leaf
|
113
|
+
{
|
114
|
+
}
|
115
|
+
|
116
|
+
.outline-disclosure-button
|
117
|
+
{
|
118
|
+
}
|
119
|
+
|
120
|
+
|
@@ -0,0 +1,70 @@
|
|
1
|
+
/* http://meyerweb.com/eric/tools/css/reset/ */
|
2
|
+
/* v1.0 | 20080212 */
|
3
|
+
|
4
|
+
html, body, div, span, applet, object, iframe,
|
5
|
+
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
6
|
+
a, abbr, acronym, address, big, cite, code,
|
7
|
+
del, dfn, em, font, img, ins, kbd, q, s, samp,
|
8
|
+
small, strike, strong, sub, sup, tt, var,
|
9
|
+
b, u, i, center,
|
10
|
+
dl, dt, dd, ol, ul, li,
|
11
|
+
fieldset, form, label, legend,
|
12
|
+
table, caption, tbody, tfoot, thead, tr, th, td {
|
13
|
+
margin: 0;
|
14
|
+
padding: 0;
|
15
|
+
border: 0;
|
16
|
+
outline: 0;
|
17
|
+
font-size: 100%;
|
18
|
+
vertical-align: baseline;
|
19
|
+
background: transparent;
|
20
|
+
font-weight: normal;
|
21
|
+
font-style: normal;
|
22
|
+
}
|
23
|
+
em, i
|
24
|
+
{
|
25
|
+
font-style: normal;
|
26
|
+
}
|
27
|
+
b, strong
|
28
|
+
{
|
29
|
+
font-weight: normal;
|
30
|
+
}
|
31
|
+
|
32
|
+
a:focus, a:active, button:focus, button:active
|
33
|
+
{
|
34
|
+
outline: 0;
|
35
|
+
}
|
36
|
+
button::-moz-focus-inner { border: 0; }
|
37
|
+
|
38
|
+
body {
|
39
|
+
line-height: 1;
|
40
|
+
}
|
41
|
+
ol, ul {
|
42
|
+
list-style: none;
|
43
|
+
}
|
44
|
+
blockquote, q {
|
45
|
+
quotes: none;
|
46
|
+
}
|
47
|
+
blockquote:before, blockquote:after,
|
48
|
+
q:before, q:after {
|
49
|
+
content: '';
|
50
|
+
content: none;
|
51
|
+
}
|
52
|
+
|
53
|
+
/* remember to define focus styles! */
|
54
|
+
/*:focus {
|
55
|
+
outline: 0;
|
56
|
+
}
|
57
|
+
*/
|
58
|
+
/* remember to highlight inserts somehow! */
|
59
|
+
ins {
|
60
|
+
text-decoration: none;
|
61
|
+
}
|
62
|
+
del {
|
63
|
+
text-decoration: line-through;
|
64
|
+
}
|
65
|
+
|
66
|
+
/* tables still need 'cellspacing="0"' in the markup */
|
67
|
+
table {
|
68
|
+
border-collapse: collapse;
|
69
|
+
border-spacing: 0;
|
70
|
+
}
|
@@ -0,0 +1,116 @@
|
|
1
|
+
.gallery
|
2
|
+
{
|
3
|
+
border: 1px solid #888;
|
4
|
+
-webkit-border-radius: 5px;
|
5
|
+
background-color: #f8f8f8;
|
6
|
+
padding: 10px 10px 35px 10px;
|
7
|
+
width: 254px;
|
8
|
+
height: 200px;
|
9
|
+
-webkit-box-shadow: 0px 2px 5px rgba(0,0,0,0.5);
|
10
|
+
|
11
|
+
overflow: hidden;
|
12
|
+
position: fixed;
|
13
|
+
left: 50%;
|
14
|
+
top: 50%;
|
15
|
+
margin: -125px 0 0 -127px;
|
16
|
+
}
|
17
|
+
|
18
|
+
.gallery.invisible
|
19
|
+
{
|
20
|
+
opacity: 0.5;
|
21
|
+
width: 50px;
|
22
|
+
height: 50px;
|
23
|
+
margin: -25px 0 0 -25px;
|
24
|
+
}
|
25
|
+
|
26
|
+
.gallery.invisible *
|
27
|
+
{
|
28
|
+
display: none !important;
|
29
|
+
}
|
30
|
+
|
31
|
+
.gallery p
|
32
|
+
{
|
33
|
+
font-family: helvetica, arial, sans serif;
|
34
|
+
font-size: 13px;
|
35
|
+
color: #555;
|
36
|
+
background-color: inherit;
|
37
|
+
}
|
38
|
+
|
39
|
+
.gallery p.c-updating
|
40
|
+
{
|
41
|
+
background-color: yellow;
|
42
|
+
}
|
43
|
+
|
44
|
+
.gallery img
|
45
|
+
{
|
46
|
+
border: 1px solid #666;
|
47
|
+
padding: 1px;
|
48
|
+
background-color: white;
|
49
|
+
}
|
50
|
+
|
51
|
+
.gallery a.next
|
52
|
+
{
|
53
|
+
position: absolute;
|
54
|
+
display: block;
|
55
|
+
text-indent: -9999px;
|
56
|
+
outline: none;
|
57
|
+
background-image: url(images/next.gif);
|
58
|
+
right: 10px;
|
59
|
+
bottom: 10px;
|
60
|
+
height: 22px;
|
61
|
+
width: 22px;
|
62
|
+
background-position: 0px -22px;
|
63
|
+
}
|
64
|
+
|
65
|
+
.gallery a.prev
|
66
|
+
{
|
67
|
+
position: absolute;
|
68
|
+
display: block;
|
69
|
+
outline: none;
|
70
|
+
text-indent: -9999px;
|
71
|
+
background-image: url(images/prev.gif);
|
72
|
+
left: 10px;
|
73
|
+
bottom: 10px;
|
74
|
+
height: 22px;
|
75
|
+
width: 22px;
|
76
|
+
background-position: 0px -22px;
|
77
|
+
}
|
78
|
+
|
79
|
+
.gallery a.next:active,
|
80
|
+
.gallery a.prev:active
|
81
|
+
{
|
82
|
+
background-position: 0px 0px;
|
83
|
+
}
|
84
|
+
|
85
|
+
.gallery a.c-disabled,
|
86
|
+
.gallery a.c-disabled:active
|
87
|
+
{
|
88
|
+
background-position: 0px -44px;
|
89
|
+
cursor: default;
|
90
|
+
}
|
91
|
+
|
92
|
+
.modal-overlay-guard
|
93
|
+
{
|
94
|
+
position: fixed;
|
95
|
+
left: 0;
|
96
|
+
top: 0;
|
97
|
+
width: 100%;
|
98
|
+
height: 100%;
|
99
|
+
}
|
100
|
+
|
101
|
+
.modal-overlay-backdrop
|
102
|
+
{
|
103
|
+
background-color: black;
|
104
|
+
opacity: 0.65;
|
105
|
+
position: fixed;
|
106
|
+
left: 0;
|
107
|
+
top: 0;
|
108
|
+
width: 100%;
|
109
|
+
height: 100%;
|
110
|
+
}
|
111
|
+
|
112
|
+
.modal-overlay-backdrop.invisible
|
113
|
+
{
|
114
|
+
opacity: 0;
|
115
|
+
}
|
116
|
+
|
@@ -0,0 +1,40 @@
|
|
1
|
+
/*jsl:import coherent-uncompressed.js*/
|
2
|
+
|
3
|
+
NIB.asset('<%=name%>.css');
|
4
|
+
|
5
|
+
NIB({
|
6
|
+
|
7
|
+
'<%=name%>': VIEW(NIB.asset('<%=name%>.html'), {
|
8
|
+
':root': coherent.View({
|
9
|
+
visibleBinding: 'controller.arrangedObjects.@count'
|
10
|
+
}),
|
11
|
+
'img': coherent.Image({
|
12
|
+
srcBinding: 'controller.selection.href'
|
13
|
+
}),
|
14
|
+
'p': coherent.View({
|
15
|
+
textBinding: 'controller.selection.caption'
|
16
|
+
}),
|
17
|
+
'a.next': coherent.Anchor({
|
18
|
+
enabledBinding: 'controller.canSelectNext',
|
19
|
+
target: 'controller',
|
20
|
+
action: 'selectNext'
|
21
|
+
}),
|
22
|
+
'a.prev': coherent.Anchor({
|
23
|
+
enabledBinding: 'controller.canSelectPrevious',
|
24
|
+
target: 'controller',
|
25
|
+
action: 'selectPrevious'
|
26
|
+
})
|
27
|
+
}),
|
28
|
+
|
29
|
+
'data': NIB.asset('<%=name%>.json'),
|
30
|
+
|
31
|
+
'controller': coherent.ArrayController({
|
32
|
+
contentBinding: 'data.photos'
|
33
|
+
}),
|
34
|
+
|
35
|
+
'owner': {
|
36
|
+
view: '<%=name%>'
|
37
|
+
}
|
38
|
+
|
39
|
+
});
|
40
|
+
|
@@ -0,0 +1,25 @@
|
|
1
|
+
{
|
2
|
+
photos: [
|
3
|
+
{
|
4
|
+
caption: "Molly on the slide.",
|
5
|
+
href: NIB.asset("photos/molly-1.jpg")
|
6
|
+
},
|
7
|
+
{
|
8
|
+
caption: "Monkey in training",
|
9
|
+
href: NIB.asset("photos/molly-2.jpg")
|
10
|
+
},
|
11
|
+
{
|
12
|
+
caption: "Spaz attack!",
|
13
|
+
href: NIB.asset("photos/molly-3.jpg")
|
14
|
+
},
|
15
|
+
{
|
16
|
+
caption: "Ride `Em, Molly!",
|
17
|
+
href: NIB.asset("photos/molly-4.jpg")
|
18
|
+
},
|
19
|
+
{
|
20
|
+
caption: "Don't mess with my zebra.",
|
21
|
+
href: NIB.asset("photos/molly-5.jpg")
|
22
|
+
}
|
23
|
+
]
|
24
|
+
|
25
|
+
}
|
Binary file
|
Binary file
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<!DOCTYPE HTML>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="X-UA-Compatible" content="IE=8">
|
5
|
+
<title><%=name.titlecase%></title>
|
6
|
+
|
7
|
+
<link rel="stylesheet" href="res/latest/<%=name%>-debug.css" type="text/css" charset="utf-8">
|
8
|
+
<script src="res/latest/<%=name%>-debug.js" type="text/javascript" charset="utf-8"></script>
|
9
|
+
</head>
|
10
|
+
|
11
|
+
<body>
|
12
|
+
<script src="res/latest/<%=name%>.jsnib"></script>
|
13
|
+
</body>
|
14
|
+
</html>
|
data/lib/coherent.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: coherent
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeff Watkins
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2010-
|
12
|
+
date: 2010-02-18 00:00:00 -08:00
|
13
13
|
default_executable: coherent
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -56,6 +56,25 @@ files:
|
|
56
56
|
- app_generators/coherent/templates/src/pages/index.html.erb
|
57
57
|
- bin/coherent
|
58
58
|
- coherent.gemspec
|
59
|
+
- demo_generators/gallery/USAGE
|
60
|
+
- demo_generators/gallery/gallery_generator.rb
|
61
|
+
- demo_generators/gallery/templates/distil.yml.erb
|
62
|
+
- demo_generators/gallery/templates/src/NOTICE.erb
|
63
|
+
- demo_generators/gallery/templates/src/css/@name@.css.erb
|
64
|
+
- demo_generators/gallery/templates/src/css/reset.css
|
65
|
+
- demo_generators/gallery/templates/src/js/@name@.js.erb
|
66
|
+
- demo_generators/gallery/templates/src/nibs/@name@/@name@.css
|
67
|
+
- demo_generators/gallery/templates/src/nibs/@name@/@name@.html
|
68
|
+
- demo_generators/gallery/templates/src/nibs/@name@/@name@.jsnib.erb
|
69
|
+
- demo_generators/gallery/templates/src/nibs/@name@/@name@.json
|
70
|
+
- demo_generators/gallery/templates/src/nibs/@name@/images/next.gif
|
71
|
+
- demo_generators/gallery/templates/src/nibs/@name@/images/prev.gif
|
72
|
+
- demo_generators/gallery/templates/src/nibs/@name@/photos/molly-1.jpg
|
73
|
+
- demo_generators/gallery/templates/src/nibs/@name@/photos/molly-2.jpg
|
74
|
+
- demo_generators/gallery/templates/src/nibs/@name@/photos/molly-3.jpg
|
75
|
+
- demo_generators/gallery/templates/src/nibs/@name@/photos/molly-4.jpg
|
76
|
+
- demo_generators/gallery/templates/src/nibs/@name@/photos/molly-5.jpg
|
77
|
+
- demo_generators/gallery/templates/src/pages/index.html.erb
|
59
78
|
- generators/class/USAGE
|
60
79
|
- generators/class/class_generator.rb
|
61
80
|
- generators/class/templates/@name@.js.erb
|