styxie 0.0.5 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 90c7ee17c29d4526e2795924b267d7c681ce6dce
4
- data.tar.gz: febe54bbe560e25049c0f754d891a81392462bd5
3
+ metadata.gz: 87d3197e636185b66b8a020ecf9057933fb8c8e8
4
+ data.tar.gz: ee5233d0599f814ec10b36c305f475c95ad52f8b
5
5
  SHA512:
6
- metadata.gz: ddb19ea59efb9ea4f3be9e733d9ae2cdfe6a3f0f6ab9d272ecee7630366d2138572aef9f6a171a4d0e9b8ed9c21c90bf5bc02d2e180a8912479ce5e128d753bf
7
- data.tar.gz: 4a5e0820045fa111a4d94bf11297ad60214672a72c29bcb97142db57f289a75a00d79ca1874b920fb47d676d537c64f79a10184808bc8e24cb443844a91d6afd
6
+ metadata.gz: '097db64e604c0e666ddfd33d84e0f02465426c0404d6d5e4337efbe5f6c4133bd46dfa9d37f47634cf15b5da320132c8698c454cc56934ee1d8bd7cbb3be9d27'
7
+ data.tar.gz: 984ee85b2af1fc09652a89984289b29604590dbdfd8d12d1ab24d33dfb9843e959e9ae40e9bc57ffcd9cdc5da23fadbaf685bd824979af9c8c82c20d184d43a1
@@ -5,8 +5,8 @@ module Styxie
5
5
  cfg.merge! data
6
6
  end
7
7
 
8
- def styxie_initialize(klass: styxie_class, method: action_name, data: styxie_configuration)
9
- json = data.to_json
8
+ def styxie_initialize(klass: styxie_class, method: action_name, data: styxie_configuration, camel_case: false)
9
+ json = styxie_formatted_data(data, camel_case).to_json
10
10
  result = <<-CODE
11
11
  <script type="text/javascript">
12
12
  //<![CDATA[
@@ -35,5 +35,10 @@ module Styxie
35
35
  def styxie_class
36
36
  controller_path.tr('/', '_').camelize
37
37
  end
38
+
39
+ def styxie_formatted_data(data, is_camel_case)
40
+ return data unless is_camel_case
41
+ data.deep_transform_keys { |key| key.to_s.camelcase(:lower) }
42
+ end
38
43
  end
39
44
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Styxie
4
- VERSION = '0.0.5'.freeze
4
+ VERSION = '0.0.7'.freeze
5
5
  end
@@ -24,4 +24,18 @@ describe Styxie::Initializer do
24
24
  expect(result).to include "Styxie.applyInitializer('ModuleTests', 'index', {});"
25
25
  expect(result.html_safe?).to be_truthy
26
26
  end
27
+
28
+ describe '#styxie_formatted_data' do
29
+ let(:data) { { hello_world: 'data' } }
30
+
31
+ it 'camel cased' do
32
+ result = controller.styxie_formatted_data(data, true)
33
+ expect(result).to eq({ 'helloWorld' => 'data' })
34
+ end
35
+
36
+ it 'snake cased' do
37
+ result = controller.styxie_formatted_data(data, false)
38
+ expect(result).to eq(data)
39
+ end
40
+ end
27
41
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: styxie
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yury Kotov
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-10-24 00:00:00.000000000 Z
12
+ date: 2018-03-28 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: Set of helpers to maintain bridge between Server side and Client (JS)
15
15
  side
@@ -63,7 +63,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
63
63
  version: '0'
64
64
  requirements: []
65
65
  rubyforge_project:
66
- rubygems_version: 2.5.1
66
+ rubygems_version: 2.6.10
67
67
  signing_key:
68
68
  specification_version: 4
69
69
  summary: Set of helpers to maintain bridge between Server side and Client (JS) side