kamiflex 0.11.3 → 0.12.0

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
  SHA256:
3
- metadata.gz: c11cc0ec7dc2d4a13c58f73d0a00601a858ab5f2c1c6107b5d269d48bbdd9de1
4
- data.tar.gz: 7a9f504ea59a2764e08989c89edddf80c60dd31d352cb7d3430069d8a61f465f
3
+ metadata.gz: b9c0e63d45a74a91db303733a98b67ca7d86f9864a320a8dddeb80362e4e812f
4
+ data.tar.gz: 0e4a0b7ff1ed8ca8203253dcee0963574afc2670331c80de6a6fa51bb335a66a
5
5
  SHA512:
6
- metadata.gz: f9b9b56d669f6b9b4ba7e4acdc0d6bf6d41fad5e8f7e3cf7958302441055d73bcd9f3460a387b2d2aff4c56234706101db6a3e76c22b42543f60fd6375f43456
7
- data.tar.gz: 142ec8ed8e99b2cd40a5fd5d1132a71ff02ae2f5faabc81f836f6760e236624e8f8619ab05d968422af475b8af168c59be42107fc1d664f49ab49658d6541156
6
+ metadata.gz: 20d529c449aaf92c79dc54ef9a9ab36b1e015a702bf5cd4991209a6e4d2b463327f5d3c3c0a4d5d49af2c789b20b8ef9cc82afbe59c364fcfc2ef0ae50f6ecd7
7
+ data.tar.gz: a10f3ed766e09479f92f1f5ba3983230e5c1d467db944e60d898d1493cceb526052482a0f04df758555ae57ec7189f7cc94529a2c0cda0460622ed07c6c04406
@@ -3,13 +3,29 @@ require_relative "./kamiflex/core"
3
3
  require_relative "./kamiflex/basic_elements"
4
4
  require_relative "./kamiflex/actions"
5
5
  require_relative "./kamiflex/quick_reply"
6
+ require_relative "./kamiflex/custom"
6
7
 
7
8
  module Kamiflex
9
+ def self.to_hash(parent)
10
+ parent.class.include Kamiflex::Core
11
+ parent.class.include Kamiflex::BasicElements
12
+ parent.class.include Kamiflex::Actions
13
+ parent.class.include Kamiflex::QuickReply
14
+ parent.class.include Kamiflex::Custom
15
+
16
+ parent.instance_exec do
17
+ flex do
18
+ yield
19
+ end
20
+ end
21
+ end
22
+
8
23
  def self.build(parent)
9
24
  parent.class.include Kamiflex::Core
10
25
  parent.class.include Kamiflex::BasicElements
11
26
  parent.class.include Kamiflex::Actions
12
27
  parent.class.include Kamiflex::QuickReply
28
+ parent.class.include Kamiflex::Custom
13
29
 
14
30
  hash = parent.instance_exec do
15
31
  flex do
@@ -9,19 +9,21 @@ module Kamiflex
9
9
  }.merge(attributes.slice(:quickReply))
10
10
  end
11
11
 
12
- def bubble
12
+ def bubble(**params)
13
13
  attributes, _contents = flex_scope{ yield }
14
14
  @flex_contents << {
15
15
  type: "bubble"
16
- }.merge(attributes.slice(:size, :direction, :header, :hero, :body, :footer, :style, :action))
16
+ }.merge(attributes.slice(:size, :direction, :header, :hero, :body, :footer, :styles, :action))
17
+ .merge(params)
17
18
  end
18
19
 
19
- def bubbles(resources)
20
+ def bubbles(resources, **params)
20
21
  resources.each_with_index do |resource, index|
21
22
  attributes, _contents = flex_scope{ yield(resource, index) }
22
23
  @flex_contents << {
23
24
  type: "bubble",
24
- }.merge(attributes.slice(:size, :direction, :header, :hero, :body, :footer, :style, :action))
25
+ }.merge(attributes.slice(:size, :direction, :header, :hero, :body, :footer, :styles, :action))
26
+ .merge(params)
25
27
  end
26
28
  end
27
29
 
@@ -68,6 +70,15 @@ module Kamiflex
68
70
  }.merge(params)
69
71
  end
70
72
 
73
+ # style
74
+ def styles(params)
75
+ @flex_attributes[:styles] = params
76
+ end
77
+
78
+ def alt_text(text)
79
+ @flex_attributes[:altText] = text
80
+ end
81
+
71
82
  # container
72
83
  def horizontal_box(resources = [nil], **params)
73
84
  resources.each_with_index do |resource, index|
@@ -0,0 +1,10 @@
1
+ module Kamiflex
2
+ module Custom
3
+ def nav(title, **params)
4
+ horizontal_box do
5
+ text 'nav'
6
+ text title
7
+ end
8
+ end
9
+ end
10
+ end
@@ -1,3 +1,3 @@
1
1
  module Kamiflex
2
- VERSION = '0.11.3'
2
+ VERSION = '0.12.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kamiflex
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.3
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - etrex kuo
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-10-07 00:00:00.000000000 Z
11
+ date: 2020-10-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -39,6 +39,7 @@ files:
39
39
  - lib/kamiflex/actions.rb
40
40
  - lib/kamiflex/basic_elements.rb
41
41
  - lib/kamiflex/core.rb
42
+ - lib/kamiflex/custom.rb
42
43
  - lib/kamiflex/quick_reply.rb
43
44
  - lib/kamiflex/railtie.rb
44
45
  - lib/kamiflex/version.rb
@@ -48,7 +49,7 @@ licenses:
48
49
  - MIT
49
50
  metadata:
50
51
  allowed_push_host: https://rubygems.org
51
- post_install_message:
52
+ post_install_message:
52
53
  rdoc_options: []
53
54
  require_paths:
54
55
  - lib
@@ -63,8 +64,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
63
64
  - !ruby/object:Gem::Version
64
65
  version: '0'
65
66
  requirements: []
66
- rubygems_version: 3.0.3
67
- signing_key:
67
+ rubygems_version: 3.1.2
68
+ signing_key:
68
69
  specification_version: 4
69
70
  summary: 'Kamiflex: generate JSON objects for Line flex message with a Builder-style
70
71
  DSL'