lookbook_storybook_json_generator 0.1.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '0918677905f162afe15aaf2e4d59a63709f0b79f14b9fee2561a37d230bfd1cd'
|
4
|
+
data.tar.gz: 858aca738508af72e733332c0ba93211282bf2542b02bead5879aa3114f77537
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7e41e2a8b9dd88c0e17d39a4bbd40bb4c8203bb37e5dcd5dc4316c1317641e84768889d0eb5ff080c56d4c137ed7cfb56df87105b62d9251ea646e9450584ff0
|
7
|
+
data.tar.gz: 3ac9349b5754888777ca3aecd231f237c24633bacc64d4259d1e6773938b6e02f5c108414fc07b360e162ab5b107c95d9b7a2a4cf7cc51086466ea9810bba34d
|
@@ -20,39 +20,37 @@ module LookbookStorybookJsonGenerator
|
|
20
20
|
|
21
21
|
attr_reader :code_object
|
22
22
|
|
23
|
+
def preview_entity
|
24
|
+
@preview_entity ||= Lookbook::PreviewEntity.new(code_object)
|
25
|
+
end
|
26
|
+
|
23
27
|
def title
|
24
|
-
|
28
|
+
preview_entity.lookup_path.titleize
|
25
29
|
end
|
26
30
|
|
27
31
|
def stories
|
28
|
-
|
32
|
+
preview_entity.scenarios.map { story(_1) }
|
29
33
|
end
|
30
34
|
|
31
|
-
def story(
|
35
|
+
def story(scenario_entity)
|
32
36
|
{
|
33
|
-
name:
|
34
|
-
parameters: parameters(
|
35
|
-
args: args(
|
36
|
-
argTypes: arg_types(
|
37
|
+
name: scenario_entity.name,
|
38
|
+
parameters: parameters(scenario_entity),
|
39
|
+
args: args(scenario_entity),
|
40
|
+
argTypes: arg_types(scenario_entity)
|
37
41
|
}
|
38
42
|
end
|
39
43
|
|
40
|
-
def parameters(
|
41
|
-
{ server: { id:
|
44
|
+
def parameters(scenario_entity)
|
45
|
+
{ server: { id: scenario_entity.lookup_path } }
|
42
46
|
end
|
43
47
|
|
44
|
-
def args(
|
45
|
-
|
46
|
-
key = k.delete(':').to_sym
|
47
|
-
# 値から引用符を削除し、シンボルがあれば文字列に変換
|
48
|
-
val = v.gsub(/'|"/, '').then { _1.start_with?(':') ? _1[1..] : _1 }
|
49
|
-
|
50
|
-
a[key] = val
|
51
|
-
end
|
48
|
+
def args(scenario_entity)
|
49
|
+
scenario_entity.tags.to_h { [_1.name, _1.value_default] }
|
52
50
|
end
|
53
51
|
|
54
|
-
def arg_types(
|
55
|
-
|
52
|
+
def arg_types(scenario_entity)
|
53
|
+
scenario_entity.tags.each_with_object({}) do |e, a|
|
56
54
|
a[e.name] = {
|
57
55
|
control: { type: control_type(e.tag_args[:input]) },
|
58
56
|
name: e.name.camelcase,
|
@@ -65,8 +63,8 @@ module LookbookStorybookJsonGenerator
|
|
65
63
|
case input
|
66
64
|
when 'toggle'
|
67
65
|
'boolean'
|
68
|
-
when 'number'
|
69
|
-
|
66
|
+
when 'number', 'select', 'color', 'range'
|
67
|
+
input
|
70
68
|
else
|
71
69
|
'text'
|
72
70
|
end
|
@@ -21,13 +21,13 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.files = Dir.chdir(__dir__) do
|
22
22
|
`git ls-files -z`.split("\x0").reject do |f|
|
23
23
|
(File.expand_path(f) == __FILE__) ||
|
24
|
-
f.start_with?(*%w[bin/ test/ spec/ features/ .git .circleci appveyor Gemfile])
|
24
|
+
f.start_with?(*%w[bin/ test/ spec/ features/ .git .circleci appveyor Gemfile dummy_app/])
|
25
25
|
end
|
26
26
|
end
|
27
27
|
spec.bindir = 'exe'
|
28
28
|
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
29
29
|
spec.require_paths = ['lib']
|
30
30
|
|
31
|
-
spec.add_dependency 'lookbook'
|
31
|
+
spec.add_dependency 'lookbook'
|
32
32
|
spec.metadata['rubygems_mfa_required'] = 'true'
|
33
33
|
end
|
metadata
CHANGED
@@ -1,29 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lookbook_storybook_json_generator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ikad
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-01-
|
11
|
+
date: 2024-01-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: lookbook
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: '0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: '0'
|
27
27
|
description: Generates JSON for Storybook from Lookbook.
|
28
28
|
email:
|
29
29
|
- tokunaga.c.daigo@forgxisto.com
|