netzke-core 0.12.3 → 1.0.0.0.pre
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +65 -607
- data/Gemfile +1 -1
- data/LICENSE +2 -6
- data/README.md +77 -145
- data/javascripts/base.js +582 -96
- data/javascripts/core.js +62 -0
- data/javascripts/notifications.js +43 -0
- data/javascripts/remoting_provider.js +29 -0
- data/javascripts/routing.js +63 -0
- data/lib/netzke/base.rb +16 -83
- data/lib/netzke/core/action_config.rb +1 -5
- data/lib/netzke/core/actions.rb +59 -21
- data/lib/netzke/core/{client_class.rb → client_class_config.rb} +81 -73
- data/lib/netzke/core/client_code.rb +157 -0
- data/lib/netzke/core/component_config.rb +2 -2
- data/lib/netzke/core/composition.rb +85 -65
- data/lib/netzke/core/configuration.rb +26 -14
- data/lib/netzke/core/core_i18n.rb +17 -0
- data/lib/netzke/core/css_config.rb +6 -6
- data/lib/netzke/core/dynamic_assets.rb +17 -24
- data/lib/netzke/core/embedding.rb +2 -2
- data/lib/netzke/core/endpoint_response.rb +8 -2
- data/lib/netzke/core/inheritance.rb +33 -0
- data/lib/netzke/core/plugins.rb +1 -4
- data/lib/netzke/core/railz/action_view_ext.rb +1 -1
- data/lib/netzke/core/railz/controller_extensions.rb +21 -15
- data/lib/netzke/core/services.rb +61 -48
- data/lib/netzke/core/session.rb +0 -2
- data/lib/netzke/core/state.rb +11 -9
- data/lib/netzke/core/stylesheets.rb +3 -3
- data/lib/netzke/core/version.rb +1 -1
- data/lib/netzke/core.rb +3 -3
- data/lib/netzke/plugin.rb +2 -6
- data/stylesheets/core.css +2 -2
- metadata +11 -10
- data/TODO.md +0 -9
- data/javascripts/ext.js +0 -518
- data/lib/netzke/core/config_to_dsl_delegator.rb +0 -62
- data/lib/netzke/core/dsl_support.rb +0 -70
- data/lib/netzke/core/html.rb +0 -29
- data/lib/netzke/core/javascript.rb +0 -123
data/lib/netzke/core/state.rb
CHANGED
@@ -14,33 +14,37 @@ module Netzke::Core
|
|
14
14
|
# Note that the provided persistence_key has effect on _application_ level, _not_ only within the view.
|
15
15
|
# By default +persistence_key+ is set to component's +js_id+. Thus, _two components named equally will share the state even being used in different Rails views_.
|
16
16
|
module State
|
17
|
-
class StateProxy
|
17
|
+
class StateProxy
|
18
18
|
def initialize(key)
|
19
19
|
@key = key.to_s
|
20
20
|
Netzke::Base.session ||= {}
|
21
21
|
Netzke::Base.session[:netzke_states] ||= {}
|
22
|
-
# @session = Netzke::Base.session[:netzke_sessions][@component_id] ||= {}
|
23
|
-
# @session = {}
|
24
22
|
end
|
25
23
|
|
26
24
|
# Delegate everything to session
|
27
25
|
def method_missing(method, *args)
|
28
26
|
session_data = to_hash
|
29
27
|
session_data.send(method, *args).tap do |d|
|
30
|
-
Netzke::Base.session[:netzke_states] =
|
28
|
+
Netzke::Base.session[:netzke_states] = state_session.merge(@key => session_data)
|
31
29
|
end
|
32
30
|
end
|
33
31
|
|
34
32
|
def to_hash
|
35
|
-
ActiveSupport::HashWithIndifferentAccess.new(
|
33
|
+
ActiveSupport::HashWithIndifferentAccess.new(state_session[@key] || {})
|
36
34
|
end
|
37
35
|
|
38
36
|
def clear
|
39
|
-
|
37
|
+
state_session.delete(@key)
|
38
|
+
end
|
39
|
+
|
40
|
+
private
|
41
|
+
|
42
|
+
def state_session
|
43
|
+
Netzke::Base.session[:netzke_states]
|
40
44
|
end
|
41
45
|
end
|
42
46
|
# A string which identifies the component. Can be passed as +persistence_key+ config option. Two components with the same +persistence_key+ will be sharing the state.
|
43
|
-
# If +persistence_key+ is passed, use it. Otherwise use js_id.
|
47
|
+
# If +persistence_key+ is passed in the config, use it. Otherwise use js_id.
|
44
48
|
def persistence_key
|
45
49
|
(config.persistence_key || js_id).to_sym
|
46
50
|
end
|
@@ -59,8 +63,6 @@ module Netzke::Core
|
|
59
63
|
# * clear
|
60
64
|
def state
|
61
65
|
@state_proxy ||= StateProxy.new(persistence_key)
|
62
|
-
# session[:netzke_states] ||= {}
|
63
|
-
# session[:netzke_states][persistence_key] ||= {}
|
64
66
|
end
|
65
67
|
end
|
66
68
|
end
|
@@ -9,7 +9,7 @@ module Netzke::Core
|
|
9
9
|
|
10
10
|
module ClassMethods
|
11
11
|
# Configures JS class
|
12
|
-
def
|
12
|
+
def client_styles &block
|
13
13
|
block.call(css_config)
|
14
14
|
end
|
15
15
|
|
@@ -29,7 +29,7 @@ module Netzke::Core
|
|
29
29
|
res = ""
|
30
30
|
|
31
31
|
# include the base-class javascript if doing JS inheritance
|
32
|
-
res << superclass.css_code << "\n" if !
|
32
|
+
res << superclass.css_code << "\n" if !client_class_config.extending_extjs_component? && !cached.include?(superclass.name)
|
33
33
|
|
34
34
|
res << css_included << "\n"
|
35
35
|
|
@@ -39,7 +39,7 @@ module Netzke::Core
|
|
39
39
|
|
40
40
|
def css_missing_code(cached = [])
|
41
41
|
code = dependency_classes.inject("") do |r,k|
|
42
|
-
cached.include?(k.
|
42
|
+
cached.include?(k.client_class_config.xtype) ? r : r + k.css_code(cached)
|
43
43
|
end
|
44
44
|
code.blank? ? nil : code
|
45
45
|
end
|
data/lib/netzke/core/version.rb
CHANGED
data/lib/netzke/core.rb
CHANGED
@@ -23,7 +23,7 @@ module Netzke
|
|
23
23
|
autoload :EndpointResponse, 'netzke/core/endpoint_response'
|
24
24
|
autoload :Version, 'netzke/core/version'
|
25
25
|
autoload :DynamicAssets, 'netzke/core/dynamic_assets'
|
26
|
-
autoload :
|
26
|
+
autoload :ClientClassConfig, 'netzke/core/client_class_config'
|
27
27
|
autoload :CssConfig, 'netzke/core/css_config'
|
28
28
|
autoload :ConfigToDslDelegator, 'netzke/core/config_to_dsl_delegator'
|
29
29
|
autoload :JsonLiteral, 'netzke/core/json_literal'
|
@@ -55,8 +55,8 @@ module Netzke
|
|
55
55
|
@@js_direct_max_retries = 0
|
56
56
|
|
57
57
|
# Amount of time feedback delay is being shown
|
58
|
-
mattr_accessor :
|
59
|
-
@@
|
58
|
+
mattr_accessor :client_notification_delay
|
59
|
+
@@client_notification_delay = 2000
|
60
60
|
|
61
61
|
mattr_accessor :with_icons
|
62
62
|
|
data/lib/netzke/plugin.rb
CHANGED
@@ -1,12 +1,8 @@
|
|
1
1
|
module Netzke
|
2
2
|
class Plugin < Base
|
3
|
-
|
3
|
+
client_class do |c|
|
4
|
+
# We need to inherit from Ext.Component so that we recieve goodies like event handling
|
4
5
|
c.extend = "Ext.Component"
|
5
|
-
c.init = <<-JS
|
6
|
-
function(cmp){
|
7
|
-
this.cmp = cmp;
|
8
|
-
}
|
9
|
-
JS
|
10
6
|
end
|
11
7
|
end
|
12
8
|
end
|
data/stylesheets/core.css
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
This file gets loaded along with the rest of Ext library at the initial load
|
3
3
|
*/
|
4
4
|
|
5
|
-
/*
|
5
|
+
/* NetzkeNotifier */
|
6
6
|
.msg .x-box-mc {
|
7
7
|
font-size:14px;
|
8
8
|
}
|
@@ -29,4 +29,4 @@ This file gets loaded along with the rest of Ext library at the initial load
|
|
29
29
|
}
|
30
30
|
#msg-div .msg p {
|
31
31
|
margin: 0;
|
32
|
-
}
|
32
|
+
}
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: netzke-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 1.0.0.0.pre
|
5
|
+
prerelease: 8
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Max Gorin
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-
|
12
|
+
date: 2015-12-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: uglifier
|
@@ -51,24 +51,26 @@ extra_rdoc_files: []
|
|
51
51
|
files:
|
52
52
|
- app/controllers/netzke_controller.rb
|
53
53
|
- javascripts/base.js
|
54
|
-
- javascripts/
|
54
|
+
- javascripts/core.js
|
55
55
|
- javascripts/js_extensions.js
|
56
|
+
- javascripts/notifications.js
|
57
|
+
- javascripts/remoting_provider.js
|
58
|
+
- javascripts/routing.js
|
56
59
|
- lib/netzke/base.rb
|
57
60
|
- lib/netzke/core/action_config.rb
|
58
61
|
- lib/netzke/core/actions.rb
|
59
|
-
- lib/netzke/core/
|
62
|
+
- lib/netzke/core/client_class_config.rb
|
63
|
+
- lib/netzke/core/client_code.rb
|
60
64
|
- lib/netzke/core/component_config.rb
|
61
65
|
- lib/netzke/core/composition.rb
|
62
|
-
- lib/netzke/core/config_to_dsl_delegator.rb
|
63
66
|
- lib/netzke/core/configuration.rb
|
67
|
+
- lib/netzke/core/core_i18n.rb
|
64
68
|
- lib/netzke/core/css_config.rb
|
65
69
|
- lib/netzke/core/dsl_config_base.rb
|
66
|
-
- lib/netzke/core/dsl_support.rb
|
67
70
|
- lib/netzke/core/dynamic_assets.rb
|
68
71
|
- lib/netzke/core/embedding.rb
|
69
72
|
- lib/netzke/core/endpoint_response.rb
|
70
|
-
- lib/netzke/core/
|
71
|
-
- lib/netzke/core/javascript.rb
|
73
|
+
- lib/netzke/core/inheritance.rb
|
72
74
|
- lib/netzke/core/json_literal.rb
|
73
75
|
- lib/netzke/core/panel.rb
|
74
76
|
- lib/netzke/core/plugins.rb
|
@@ -98,7 +100,6 @@ files:
|
|
98
100
|
- LICENSE
|
99
101
|
- Rakefile
|
100
102
|
- README.md
|
101
|
-
- TODO.md
|
102
103
|
- init.rb
|
103
104
|
homepage: http://netzke.org
|
104
105
|
licenses: []
|
data/TODO.md
DELETED
@@ -1,9 +0,0 @@
|
|
1
|
-
## Roadmap
|
2
|
-
|
3
|
-
### v1.0
|
4
|
-
|
5
|
-
* `js_configure`: c.mixin and c.include without params pickup "mixins/*.js" and "includes/*.js" respectively
|
6
|
-
* new convention for endpoint naming: an endpoint declared with `endpoint :do_something` will be callable from
|
7
|
-
the client as `this.serverDoSomething`
|
8
|
-
* netzkeFeedback removed in favor of netzkeInfo and netzkeError
|
9
|
-
* Grid config options like `enable_advanced_search` loose their `enable_` prefix
|