atome 0.5.4.1.7 → 0.5.4.1.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -1
- data/lib/atome/renderers/browser/atome.rb +29 -10
- data/lib/atome/renderers/browser/helpers/color_helper.rb +23 -8
- data/lib/atome/renderers/browser/material.rb +21 -21
- data/lib/atome/renderers/browser/opal_add_on.rb +30 -29
- data/lib/atome/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4feb89bd1af8453078bbe9c826af8f6176c321ee7b155e109c3b8a3f6033e87e
|
4
|
+
data.tar.gz: 7d13f98dde5fbafb74f27eae1ea4fe025ef7de735c939414cc23708205963a6f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 82eca49b901057c6070c7db3f64496efee49b63833a27b6b0dc2388a32a7cf1e6b37a7531bec2e9272f963f9d39f75ae7884c20d89cbe1482c0abe58dc674b6e
|
7
|
+
data.tar.gz: c1013e2b38c94c2a46fef8aa91fade3361ef952d71be71e7ddbeada26955c43a7ce21e252a5ceadf954fd4a8ea96faf7298f5666be5db9311b1478f6280d834e
|
data/CHANGELOG.md
CHANGED
@@ -15,4 +15,7 @@ vector now use class instead of a local style
|
|
15
15
|
## [0.5.4.1.7] - 2023-05-25
|
16
16
|
|
17
17
|
remove "shape :pre" and move the condition when using :definition to atome_common , because of a bug that remove all
|
18
|
-
attached atome
|
18
|
+
attached atome
|
19
|
+
|
20
|
+
## [0.5.4.1.8] - 2023-05-25
|
21
|
+
Ready to add gradient color now systematically use a variable for each component( Red, green , blue , alpha)
|
@@ -23,17 +23,17 @@ generator.build_render(:browser_shape) do
|
|
23
23
|
end
|
24
24
|
|
25
25
|
generator.build_render(:browser_color) do |_value|
|
26
|
-
puts
|
26
|
+
puts " @atome[:id] : #{@atome[:id]}"
|
27
27
|
@browser_type = :style
|
28
28
|
# puts "1 - for the id : #{id} the browser type is ::::> #{@browser_type}"
|
29
29
|
id_found = @atome[:id]
|
30
30
|
# type_found = @atome[:type]
|
31
31
|
# we remove previous unused style tag
|
32
32
|
BrowserHelper.browser_document[id]&.remove
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
33
|
+
red = @atome[:red]
|
34
|
+
green = @atome[:green]
|
35
|
+
blue = @atome[:blue]
|
36
|
+
alpha = @atome[:alpha]
|
37
37
|
########################### old code ###########################
|
38
38
|
# BrowserHelper.browser_document.head << Browser.DOM("<style atome='#{type_found}'
|
39
39
|
# id='#{id_found}'>.#{id_found}{
|
@@ -47,11 +47,30 @@ generator.build_render(:browser_color) do |_value|
|
|
47
47
|
########################### new code ###########################
|
48
48
|
atomic_style = BrowserHelper.browser_document['#atomic_style']
|
49
49
|
|
50
|
+
# class_content = <<STR
|
51
|
+
# .#{id_found} {
|
52
|
+
# --#{id_found}_r : #{red * 255}
|
53
|
+
# --#{id_found}_g : #{green * 255}
|
54
|
+
# --#{id_found}_b : #{blue * 255}
|
55
|
+
# --#{id_found}_a : #{alpha}
|
56
|
+
# --#{id_found}_col : rgba(var(--#{id_found}_r ),var(--#{id_found}_g ),var(--#{id_found}_b ),var(--#{id_found}_a ))
|
57
|
+
#
|
58
|
+
# background-color: rgba(#{red * 255}, #{green * 255}, #{blue * 255}, #{alpha});
|
59
|
+
# fill: rgba(#{red * 255}, #{green * 255}, #{blue * 255}, #{alpha});
|
60
|
+
# stroke: rgba(#{red * 255}, #{green * 255}, #{blue * 255}, #{alpha});
|
61
|
+
# }
|
62
|
+
# STR
|
63
|
+
|
50
64
|
class_content = <<STR
|
51
65
|
.#{id_found} {
|
52
|
-
|
53
|
-
|
54
|
-
|
66
|
+
--#{id_found}_r : #{red * 255};
|
67
|
+
--#{id_found}_g : #{green * 255};
|
68
|
+
--#{id_found}_b : #{blue * 255};
|
69
|
+
--#{id_found}_a : #{alpha};
|
70
|
+
--#{id_found}_col : rgba(var(--#{id_found}_r ),var(--#{id_found}_g ),var(--#{id_found}_b ),var(--#{id_found}_a ));
|
71
|
+
background-color: var(--#{id_found}_col);
|
72
|
+
fill: var(--#{id_found}_col);
|
73
|
+
stroke: var(--#{id_found}_col);
|
55
74
|
}
|
56
75
|
STR
|
57
76
|
|
@@ -114,8 +133,8 @@ STR
|
|
114
133
|
atomic_style.text += class_content
|
115
134
|
end
|
116
135
|
end
|
117
|
-
#
|
118
|
-
# @browser_object = BrowserHelper.browser_document[id_found]
|
136
|
+
#
|
137
|
+
# @browser_object = BrowserHelper.browser_document[id_found]
|
119
138
|
|
120
139
|
end
|
121
140
|
|
@@ -2,14 +2,20 @@
|
|
2
2
|
|
3
3
|
# for browser rendering
|
4
4
|
module BrowserHelper
|
5
|
-
def self.browser_colorize_color(
|
5
|
+
def self.browser_colorize_color(red, green, blue, alpha, atome)
|
6
6
|
########################### new code ###########################
|
7
7
|
id_found=atome[:id]
|
8
|
+
# color_updated = "rgba(#{red}, #{green}, #{blue}, #{alpha})"
|
8
9
|
new_class_content = <<STR
|
9
10
|
.#{id_found} {
|
10
|
-
|
11
|
-
|
12
|
-
|
11
|
+
--#{id_found}_r : #{red * 255};
|
12
|
+
--#{id_found}_g : #{green * 255};
|
13
|
+
--#{id_found}_b : #{blue * 255};
|
14
|
+
--#{id_found}_a : #{alpha};
|
15
|
+
--#{id_found}_col : rgba(var(--#{id_found}_r ),var(--#{id_found}_g ),var(--#{id_found}_b ),var(--#{id_found}_a ));
|
16
|
+
background-color: var(--#{id_found}_col);
|
17
|
+
fill: var(--#{id_found}_col);
|
18
|
+
stroke: var(--#{id_found}_col);
|
13
19
|
}
|
14
20
|
STR
|
15
21
|
|
@@ -32,13 +38,16 @@ STR
|
|
32
38
|
|
33
39
|
end
|
34
40
|
|
35
|
-
def self.browser_colorize_shadow(
|
36
|
-
"new shadow color is : #{color_updated}"
|
37
|
-
puts "=====> #{color_updated} : #{atome}"
|
41
|
+
def self.browser_colorize_shadow(red, green, blue, alpha, atome)
|
42
|
+
# "new shadow color is : #{color_updated}"
|
43
|
+
# puts "=====> #{color_updated} : #{atome}"
|
44
|
+
# TODO: check if we need to use variable for the color or let it like it is!
|
38
45
|
left = atome[:left]
|
39
46
|
top = atome[:top]
|
40
47
|
blur = atome[:blur]
|
41
48
|
direction = atome[:direction]
|
49
|
+
|
50
|
+
|
42
51
|
# shadow_updated = "#{left}px #{top}px #{blur}px #{color_updated} #{direction}"
|
43
52
|
# `document.getElementById(#{atome[:id]}).sheet.cssRules[0].style.boxShadow = #{shadow_updated}`
|
44
53
|
|
@@ -46,7 +55,13 @@ STR
|
|
46
55
|
id_found= atome[:id]
|
47
56
|
class_content = <<STR
|
48
57
|
.#{id_found} {
|
49
|
-
|
58
|
+
--#{id_found}_r : #{red * 255};
|
59
|
+
--#{id_found}_g : #{green * 255};
|
60
|
+
--#{id_found}_b : #{blue * 255};
|
61
|
+
--#{id_found}_a : #{alpha};
|
62
|
+
--#{id_found}_col : rgba(var(--#{id_found}_r ),var(--#{id_found}_g ),var(--#{id_found}_b ),var(--#{id_found}_a ));
|
63
|
+
|
64
|
+
box-shadow: #{left}px #{top}px #{blur}px var(--#{id_found}_col) #{direction};
|
50
65
|
}
|
51
66
|
STR
|
52
67
|
|
@@ -3,46 +3,46 @@
|
|
3
3
|
generator = Genesis.generator
|
4
4
|
|
5
5
|
generator.build_render(:red) do |value|
|
6
|
-
red = (
|
7
|
-
green = @atome[:green]
|
8
|
-
blue = @atome[:blue]
|
6
|
+
red = (@atome[:red] = value)
|
7
|
+
green = @atome[:green]
|
8
|
+
blue = @atome[:blue]
|
9
9
|
alpha = @atome[:alpha]
|
10
|
-
color_updated = "rgba(#{red}, #{green}, #{blue}, #{alpha})"
|
11
|
-
BrowserHelper.send("browser_colorize_#{@atome[:type]}",
|
10
|
+
# color_updated = "rgba(#{red}, #{green}, #{blue}, #{alpha})"
|
11
|
+
BrowserHelper.send("browser_colorize_#{@atome[:type]}", red, green, blue, alpha, @atome)
|
12
12
|
# we return self to allow syntax of the type : a.color(:black).red(1).green(0.3)
|
13
13
|
self
|
14
14
|
end
|
15
15
|
|
16
16
|
generator.build_render(:green) do |value|
|
17
17
|
# we return self to allow syntax of the type : a.color(:black).red(1).green(0.3)
|
18
|
-
red = @atome[:red]
|
19
|
-
green = (@atome[:green] = value)
|
20
|
-
blue = @atome[:blue]
|
18
|
+
red = @atome[:red]
|
19
|
+
green = (@atome[:green] = value)
|
20
|
+
blue = @atome[:blue]
|
21
21
|
alpha = @atome[:alpha]
|
22
|
-
color_updated = "rgba(#{red}, #{green}, #{blue}, #{alpha})"
|
23
|
-
BrowserHelper.send("browser_colorize_#{@atome[:type]}",
|
22
|
+
# color_updated = "rgba(#{red}, #{green}, #{blue}, #{alpha})"
|
23
|
+
BrowserHelper.send("browser_colorize_#{@atome[:type]}", red, green, blue, alpha, @atome)
|
24
24
|
# we return self to allow syntax of the type : a.color(:black).red(1).green(0.3)
|
25
25
|
self
|
26
26
|
end
|
27
27
|
|
28
28
|
generator.build_render(:blue) do |value|
|
29
|
-
red = @atome[:red]
|
30
|
-
green = @atome[:green]
|
31
|
-
blue = (@atome[:blue] = value)
|
29
|
+
red = @atome[:red]
|
30
|
+
green = @atome[:green]
|
31
|
+
blue = (@atome[:blue] = value)
|
32
32
|
alpha = @atome[:alpha]
|
33
|
-
color_updated = "rgba(#{red}, #{green}, #{blue}, #{alpha})"
|
34
|
-
BrowserHelper.send("browser_colorize_#{@atome[:type]}",
|
33
|
+
# color_updated = "rgba(#{red}, #{green}, #{blue}, #{alpha})"
|
34
|
+
BrowserHelper.send("browser_colorize_#{@atome[:type]}", red, green, blue, alpha, @atome)
|
35
35
|
# we return self to allow syntax of the type : a.color(:black).red(1).green(0.3)
|
36
36
|
self
|
37
37
|
end
|
38
38
|
|
39
39
|
generator.build_render(:alpha) do |value|
|
40
|
-
red = @atome[:red]
|
41
|
-
green = @atome[:green]
|
42
|
-
blue = @atome[:blue]
|
40
|
+
red = @atome[:red]
|
41
|
+
green = @atome[:green]
|
42
|
+
blue = @atome[:blue]
|
43
43
|
alpha = (@atome[:alpha] = value)
|
44
|
-
color_updated = "rgba(#{red}, #{green}, #{blue}, #{alpha})"
|
45
|
-
BrowserHelper.send("browser_colorize_#{@atome[:type]}",
|
44
|
+
# color_updated = "rgba(#{red}, #{green}, #{blue}, #{alpha})"
|
45
|
+
BrowserHelper.send("browser_colorize_#{@atome[:type]}", red, green, blue, alpha, @atome)
|
46
46
|
# we return self to allow syntax of the type : a.color(:black).red(1).green(0.3)
|
47
47
|
self
|
48
48
|
end
|
@@ -89,7 +89,7 @@ new ({ browser: :opacity }) do |value|
|
|
89
89
|
end
|
90
90
|
|
91
91
|
new ({ browser: :definition }) do |value|
|
92
|
-
target=id
|
92
|
+
target = id
|
93
93
|
`
|
94
94
|
|
95
95
|
var divElement = document.querySelector('#'+#{target});;
|
@@ -1,31 +1,32 @@
|
|
1
|
-
def add_new_class(class_name, tag_name, tag_content)
|
1
|
+
# def add_new_class(class_name, tag_name, tag_content)
|
2
|
+
#
|
3
|
+
# `
|
4
|
+
# var styleTag = document.getElementById("atomic_style");
|
5
|
+
# styleTag.innerHTML += "\n."+#{class_name}+'{\n '+#{tag_name}+': '+#{tag_content}+';\n}\n\n\n\n';
|
6
|
+
# `
|
7
|
+
# end
|
8
|
+
#
|
9
|
+
# add_new_class('new_class', 'background-color','yellow')
|
10
|
+
# add_new_class('other_class', 'color','red')
|
2
11
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
12
|
+
# def update_css_tag(tag_name, var_name, value)
|
13
|
+
# alert "this code doesn't work with chrome"
|
14
|
+
# `
|
15
|
+
# var rules = null;
|
16
|
+
# var cssRules = document.styleSheets[0].cssRules;
|
17
|
+
# for (var i = 0; i < cssRules.length; i++) {
|
18
|
+
# var rule = cssRules[i];
|
19
|
+
# if (rule.selectorText === '.'+#{tag_name}) {
|
20
|
+
# rules = rule;
|
21
|
+
# break;
|
22
|
+
# }
|
23
|
+
# }
|
24
|
+
#
|
25
|
+
# if (rules) {
|
26
|
+
#
|
27
|
+
# rules.style.setProperty(#{var_name}, #{value});
|
28
|
+
# }
|
29
|
+
# `
|
30
|
+
# end
|
8
31
|
|
9
|
-
|
10
|
-
add_new_class('other_class', 'color','red')
|
11
|
-
|
12
|
-
def update_css_tag(tag_name, var_name, value)
|
13
|
-
`
|
14
|
-
var rules = null;
|
15
|
-
var cssRules = document.styleSheets[0].cssRules;
|
16
|
-
for (var i = 0; i < cssRules.length; i++) {
|
17
|
-
var rule = cssRules[i];
|
18
|
-
if (rule.selectorText === '.'+#{tag_name}) {
|
19
|
-
rules = rule;
|
20
|
-
break;
|
21
|
-
}
|
22
|
-
}
|
23
|
-
|
24
|
-
if (rules) {
|
25
|
-
|
26
|
-
rules.style.setProperty(#{var_name}, #{value});
|
27
|
-
}
|
28
|
-
`
|
29
|
-
end
|
30
|
-
|
31
|
-
update_css_tag('other_class', '--end-color', 'blue')
|
32
|
+
# update_css_tag('other_class', '--end-color', 'blue')
|
data/lib/atome/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: atome
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.4.1.
|
4
|
+
version: 0.5.4.1.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jean-Eric Godard
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-05-
|
11
|
+
date: 2023-05-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: arduino_firmata
|