lookbook 1.1.1 → 1.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/lookbook/js/helpers/string.js +23 -1
- data/app/assets/lookbook/js/lookbook.js +0 -1
- data/app/components/lookbook/button/component.html.erb +2 -1
- data/app/components/lookbook/button/component.js +9 -0
- data/app/components/lookbook/display_options/editor/component.html.erb +13 -0
- data/app/components/lookbook/display_options/editor/component.rb +7 -0
- data/app/components/lookbook/display_options/field/component.css +33 -0
- data/app/components/lookbook/display_options/field/component.html.erb +8 -0
- data/app/components/lookbook/display_options/field/component.js +30 -0
- data/app/components/lookbook/display_options/field/component.rb +28 -0
- data/app/components/lookbook/inspector_panel/component.html.erb +1 -1
- data/app/components/lookbook/inspector_panel/component.rb +10 -11
- data/app/components/lookbook/params/editor/component.rb +6 -3
- data/app/components/lookbook/params/field/component.rb +1 -5
- data/app/components/lookbook/tab_panels/panel/component.html.erb +1 -1
- data/app/components/lookbook/tab_panels/panel/component.rb +1 -2
- data/app/components/lookbook/tabs/dropdown_tab/component.html.erb +1 -0
- data/app/components/lookbook/tabs/tab/component.html.erb +1 -0
- data/app/components/lookbook/viewport/component.html.erb +1 -1
- data/app/components/lookbook/viewport/component.rb +2 -1
- data/app/controllers/lookbook/previews_controller.rb +40 -29
- data/app/helpers/lookbook/preview_helper.rb +1 -1
- data/app/views/lookbook/previews/panels/_params.html.erb +1 -1
- data/app/views/lookbook/previews/panels/_preview.html.erb +9 -6
- data/app/views/lookbook/previews/show.html.erb +29 -11
- data/config/app.yml +36 -0
- data/config/hooks.yml +4 -0
- data/config/inputs.yml +48 -0
- data/config/panels.yml +30 -0
- data/config/routes.rb +1 -1
- data/config/tags.yml +29 -0
- data/lib/lookbook/engine.rb +40 -20
- data/lib/lookbook/markdown.rb +1 -11
- data/lib/lookbook/page.rb +1 -1
- data/lib/lookbook/params.rb +0 -7
- data/lib/lookbook/parser.rb +3 -10
- data/lib/lookbook/preview.rb +7 -3
- data/lib/lookbook/preview_example.rb +7 -3
- data/lib/lookbook/preview_group.rb +2 -2
- data/lib/lookbook/services/config_loader.rb +20 -0
- data/lib/lookbook/services/search_param_builder.rb +13 -0
- data/lib/lookbook/services/search_param_parser.rb +15 -0
- data/lib/lookbook/services/tags/key_value_tag_parser.rb +24 -0
- data/lib/lookbook/source_inspector.rb +10 -16
- data/lib/lookbook/stores/config_store.rb +80 -0
- data/lib/lookbook/stores/hook_store.rb +28 -0
- data/lib/lookbook/stores/input_store.rb +58 -0
- data/lib/lookbook/stores/panel_store.rb +141 -0
- data/lib/lookbook/stores/tag_store.rb +46 -0
- data/lib/lookbook/support/errors/config_error.rb +7 -0
- data/lib/lookbook/support/errors/lookbook_error.rb +21 -0
- data/lib/lookbook/support/errors/parser_error.rb +7 -0
- data/lib/lookbook/support/service.rb +7 -0
- data/lib/lookbook/support/store.rb +77 -0
- data/lib/lookbook/support/utils/attribute_utils.rb +9 -0
- data/lib/lookbook/support/utils/path_utils.rb +19 -0
- data/lib/lookbook/tags.rb +5 -14
- data/lib/lookbook/version.rb +1 -1
- data/lib/lookbook.rb +43 -12
- data/public/lookbook-assets/css/lookbook.css +33 -0
- data/public/lookbook-assets/css/lookbook.css.map +1 -1
- data/public/lookbook-assets/js/lookbook.js +145 -4
- data/public/lookbook-assets/js/lookbook.js.map +1 -1
- metadata +29 -6
- data/lib/lookbook/config.rb +0 -278
- data/lib/lookbook/hooks.rb +0 -21
- data/lib/lookbook/panels.rb +0 -25
- data/lib/lookbook/store.rb +0 -34
@@ -0,0 +1,141 @@
|
|
1
|
+
module Lookbook
|
2
|
+
class PanelStore
|
3
|
+
CONFIG_FILE = "config/panels.yml"
|
4
|
+
|
5
|
+
DEFAULTS = {
|
6
|
+
label: lambda { |data| data.name.titleize },
|
7
|
+
hotkey: nil,
|
8
|
+
disabled: false,
|
9
|
+
show: true,
|
10
|
+
copy: nil,
|
11
|
+
locals: {}
|
12
|
+
}
|
13
|
+
|
14
|
+
attr_reader :store
|
15
|
+
delegate :to_h, to: :store
|
16
|
+
|
17
|
+
def initialize(config = nil)
|
18
|
+
@store = {}
|
19
|
+
load_config(config)
|
20
|
+
end
|
21
|
+
|
22
|
+
def add_panel(name, group_name, *args)
|
23
|
+
if get_panel(name)
|
24
|
+
raise ConfigError.new("panel with name '#{name}' already exists", scope: "panels.config")
|
25
|
+
else
|
26
|
+
panel = build_config(name, group_name, *args)
|
27
|
+
insert_at_position(group_name, panel.position, panel)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
def update_panel(name, opts = {})
|
32
|
+
panel = get_panel(name)
|
33
|
+
if panel.present?
|
34
|
+
panel.merge!(opts.except(:name, :position))
|
35
|
+
if opts.key?(:position)
|
36
|
+
remove_panel(name)
|
37
|
+
insert_at_position(panel.group, opts[:position], panel)
|
38
|
+
end
|
39
|
+
else
|
40
|
+
not_found!(name)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
def remove_panel(name)
|
45
|
+
store.each do |group_name, panels|
|
46
|
+
return true unless panels.reject! { |p| p.name == name.to_sym }.nil?
|
47
|
+
end
|
48
|
+
not_found!(name)
|
49
|
+
end
|
50
|
+
|
51
|
+
def load_config(config)
|
52
|
+
config.to_h.each do |group_name, panels|
|
53
|
+
panels.each do |opts|
|
54
|
+
add_panel(opts[:name], group_name, opts.except(:name))
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
def get_panel(name, group_name = nil)
|
60
|
+
panels(group_name).find { |p| p.name == name.to_sym }
|
61
|
+
end
|
62
|
+
|
63
|
+
def count_panels(group_name = nil)
|
64
|
+
panels(group_name).count
|
65
|
+
end
|
66
|
+
|
67
|
+
def in_group(name)
|
68
|
+
store[name.to_sym] ||= []
|
69
|
+
end
|
70
|
+
|
71
|
+
def panels(group_name = nil)
|
72
|
+
store.to_h.reduce([]) do |result, (name, group_panels)|
|
73
|
+
result.push(*group_panels) if group_name.nil? || name == group_name.to_sym
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
def self.resolve_config(opts, data)
|
78
|
+
if opts[:name].present?
|
79
|
+
data = data.is_a?(Store) ? data : Store.new(data)
|
80
|
+
data.name = opts[:name].to_s
|
81
|
+
resolved = opts.transform_values do |value|
|
82
|
+
value.respond_to?(:call) ? value.call(data) : value
|
83
|
+
end
|
84
|
+
Store.new(resolved)
|
85
|
+
else
|
86
|
+
raise ConfigError.new(":name key is required when resolving config", scope: "panels.config")
|
87
|
+
end
|
88
|
+
end
|
89
|
+
|
90
|
+
def self.init_from_config
|
91
|
+
new(default_config)
|
92
|
+
end
|
93
|
+
|
94
|
+
def self.default_config
|
95
|
+
config = ConfigLoader.call(CONFIG_FILE)
|
96
|
+
config.each do |group, panels|
|
97
|
+
panels.map! do |opts|
|
98
|
+
opts.transform_values! do |value|
|
99
|
+
value.is_a?(String) && value.start_with?("->") ? eval(value) : value # standard:disable Security/Eval
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
protected
|
106
|
+
|
107
|
+
def insert_at_position(group_name, position, opts)
|
108
|
+
group_panels = in_group(group_name)
|
109
|
+
index = insert_index(position, group_panels.count)
|
110
|
+
group_panels.insert(index, opts.except!(:position))
|
111
|
+
end
|
112
|
+
|
113
|
+
def insert_index(position, items_count)
|
114
|
+
index = position == 0 ? 1 : (position || 0).to_int
|
115
|
+
last_position = items_count + 1
|
116
|
+
index = last_position if index > last_position
|
117
|
+
index - 1
|
118
|
+
end
|
119
|
+
|
120
|
+
def build_config(name, group_name, *args)
|
121
|
+
opts = if args.many? && args.last.is_a?(Hash)
|
122
|
+
args.last.merge({partial: args.first})
|
123
|
+
elsif args.any?
|
124
|
+
args.first.is_a?(String) ? {partial: args.first} : args.first
|
125
|
+
else
|
126
|
+
{}
|
127
|
+
end
|
128
|
+
if opts[:partial].present?
|
129
|
+
opts[:name] = name.to_sym
|
130
|
+
opts[:group] = group_name.to_sym
|
131
|
+
Store.new(DEFAULTS.merge(opts))
|
132
|
+
else
|
133
|
+
raise ConfigError.new("panels must define a partial path", scope: "panels.config")
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
def not_found!(name)
|
138
|
+
raise ConfigError.new("could not find panel named '#{name}'", scope: "panels.config")
|
139
|
+
end
|
140
|
+
end
|
141
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module Lookbook
|
2
|
+
class TagStore
|
3
|
+
CONFIG_FILE = "config/tags.yml"
|
4
|
+
|
5
|
+
attr_reader :store
|
6
|
+
delegate :to_h, to: :store
|
7
|
+
|
8
|
+
def initialize(config = nil)
|
9
|
+
@store = {}
|
10
|
+
config.to_h.each { add_tag(_1, _2) }
|
11
|
+
end
|
12
|
+
|
13
|
+
def add_tag(name, opts = nil)
|
14
|
+
name = name.to_sym
|
15
|
+
if store.key?(name)
|
16
|
+
raise ConfigError.new("tag with name '#{name}' already exists", scope: "tags.config")
|
17
|
+
else
|
18
|
+
store[name] = build_config(name, opts)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
def get_tag(name)
|
23
|
+
store[name.to_sym]
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.init_from_config
|
27
|
+
new(default_config)
|
28
|
+
end
|
29
|
+
|
30
|
+
def self.default_config
|
31
|
+
ConfigLoader.call(CONFIG_FILE)
|
32
|
+
end
|
33
|
+
|
34
|
+
protected
|
35
|
+
|
36
|
+
def build_config(name, opts = nil)
|
37
|
+
opts = opts.to_h
|
38
|
+
Store.new({
|
39
|
+
name: name.to_sym,
|
40
|
+
label: opts[:label] || name.to_s.titleize,
|
41
|
+
yard_parser: opts[:yard_parser]&.to_sym,
|
42
|
+
opts: opts[:opts].to_h
|
43
|
+
})
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module Lookbook
|
2
|
+
class LookbookError < StandardError
|
3
|
+
attr_reader :scope, :original, :message
|
4
|
+
|
5
|
+
def initialize(msg = nil, scope: nil, original: nil)
|
6
|
+
@scope = scope
|
7
|
+
@original = original
|
8
|
+
@message = msg
|
9
|
+
super(msg)
|
10
|
+
end
|
11
|
+
|
12
|
+
def full_message
|
13
|
+
if msg.nil?
|
14
|
+
message
|
15
|
+
else
|
16
|
+
scope_str = scope.nil? ? "[#{scope}]" : ""
|
17
|
+
"#{scope_str} #{message}".strip
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,77 @@
|
|
1
|
+
module Lookbook
|
2
|
+
class Store < ActiveSupport::OrderedOptions
|
3
|
+
def initialize(initial_data = nil, opts = {})
|
4
|
+
@recursive = opts[:recursive] || false
|
5
|
+
super()
|
6
|
+
initial_data.to_h.each { self[_1] = _2 }
|
7
|
+
end
|
8
|
+
|
9
|
+
def []=(key, value)
|
10
|
+
super(key, normalize_value(value))
|
11
|
+
end
|
12
|
+
|
13
|
+
def fetch(name, *args)
|
14
|
+
super(name.to_sym, *args)
|
15
|
+
end
|
16
|
+
|
17
|
+
def method_missing(name, *args)
|
18
|
+
if name.to_s.end_with?("=")
|
19
|
+
args[0] = normalize_value(args[0])
|
20
|
+
end
|
21
|
+
super(name, *args)
|
22
|
+
end
|
23
|
+
|
24
|
+
def respond_to_missing?(name, include_private)
|
25
|
+
true
|
26
|
+
end
|
27
|
+
|
28
|
+
# def [](key)
|
29
|
+
# key = key.to_sym
|
30
|
+
# if respond_to? key
|
31
|
+
# public_send(key)
|
32
|
+
# else
|
33
|
+
# self[key]
|
34
|
+
# end
|
35
|
+
# end
|
36
|
+
|
37
|
+
# def []=(key, value)
|
38
|
+
# setter_key = "#{key}=".to_sym
|
39
|
+
# if respond_to? setter_key
|
40
|
+
# public_send(setter_key, value)
|
41
|
+
# else
|
42
|
+
# _set(key.to_sym, normalize_value(value))
|
43
|
+
# end
|
44
|
+
# end
|
45
|
+
|
46
|
+
# def method_missing(key, *args)
|
47
|
+
# if key.to_s.end_with?("=")
|
48
|
+
# args[0] = normalize_value(args[0])
|
49
|
+
# end
|
50
|
+
# public_send(key.to_sym, *args)
|
51
|
+
# end
|
52
|
+
|
53
|
+
# def respond_to_missing?(key, *args)
|
54
|
+
# key?(key.to_sym)
|
55
|
+
# end
|
56
|
+
|
57
|
+
# def fetch(key, *args)
|
58
|
+
# super.fetch(key.to_sym, *args)
|
59
|
+
# end
|
60
|
+
|
61
|
+
def to_h
|
62
|
+
transform_values do |value|
|
63
|
+
value.is_a?(Store) ? value.to_h : value
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
def to_hash
|
68
|
+
to_h
|
69
|
+
end
|
70
|
+
|
71
|
+
protected
|
72
|
+
|
73
|
+
def normalize_value(value)
|
74
|
+
@recursive && !value.is_a?(Store) && value.is_a?(Hash) ? Store.new(value, recursive: @recursive) : value
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module Lookbook
|
2
|
+
module PathUtils
|
3
|
+
class << self
|
4
|
+
def to_absolute(path)
|
5
|
+
File.absolute_path(path.to_s, Rails.root)
|
6
|
+
end
|
7
|
+
|
8
|
+
def normalize_all(paths, allow_root: false)
|
9
|
+
root = Rails.application.root.to_s
|
10
|
+
paths.map do |path|
|
11
|
+
full_path = to_absolute(path)
|
12
|
+
if Dir.exist?(full_path)
|
13
|
+
full_path if allow_root || full_path.to_s != root
|
14
|
+
end
|
15
|
+
end.compact.uniq
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/lib/lookbook/tags.rb
CHANGED
@@ -1,23 +1,14 @@
|
|
1
1
|
module Lookbook
|
2
2
|
module Tags
|
3
|
-
def define_tag(name, args = nil, opts = {}, &block)
|
4
|
-
name = name.to_s.downcase.underscore.to_sym
|
5
|
-
if args.is_a? Hash
|
6
|
-
opts = args
|
7
|
-
args = nil
|
8
|
-
end
|
9
|
-
opts[:args] = args
|
10
|
-
opts[:parser] = block if block
|
11
|
-
Lookbook.config.preview_tags[name] = opts
|
12
|
-
end
|
13
|
-
|
14
3
|
def self.process_tags(tag_objects, file: nil, eval_scope: nil)
|
15
4
|
return [] if tag_objects.none?
|
16
5
|
tag_objects.map do |tag_object|
|
17
|
-
|
6
|
+
tag_config = Engine.tags.get_tag(tag_object.tag_name).to_h
|
7
|
+
tag_opts = tag_config[:opts].to_h
|
18
8
|
Lookbook::Tag.new(tag_object,
|
19
|
-
|
20
|
-
|
9
|
+
tag_opts[:named_args],
|
10
|
+
parser: tag_opts[:args_parser],
|
11
|
+
**tag_opts.except(:named_args, :args_parser),
|
21
12
|
file: file,
|
22
13
|
eval_scope: eval_scope)
|
23
14
|
end.compact
|
data/lib/lookbook/version.rb
CHANGED
data/lib/lookbook.rb
CHANGED
@@ -1,24 +1,21 @@
|
|
1
1
|
require "zeitwerk"
|
2
|
-
require "ostruct"
|
3
2
|
require "lookbook/version"
|
4
3
|
|
5
4
|
loader = Zeitwerk::Loader.for_gem
|
6
5
|
loader.ignore("#{__dir__}/lookbook.rb")
|
7
6
|
loader.push_dir("#{__dir__}/lookbook", namespace: Lookbook)
|
7
|
+
loader.collapse("#{__dir__}/lookbook/*")
|
8
|
+
loader.collapse("#{__dir__}/lookbook/*/*")
|
8
9
|
loader.setup
|
9
10
|
|
10
11
|
module Lookbook
|
11
12
|
class << self
|
12
|
-
include Lookbook::Hooks
|
13
|
-
include Lookbook::Panels
|
14
|
-
include Lookbook::Tags
|
15
|
-
|
16
13
|
def version
|
17
14
|
Lookbook::VERSION
|
18
15
|
end
|
19
16
|
|
20
17
|
def config
|
21
|
-
@config ||=
|
18
|
+
@config ||= ConfigStore.init_from_config
|
22
19
|
end
|
23
20
|
|
24
21
|
def configure
|
@@ -47,7 +44,12 @@ module Lookbook
|
|
47
44
|
{
|
48
45
|
version: version,
|
49
46
|
env: Rails.env.to_s,
|
50
|
-
config:
|
47
|
+
config: [
|
48
|
+
config.to_h,
|
49
|
+
{panels: Engine.panels.to_h},
|
50
|
+
{inputs: Engine.inputs.to_h},
|
51
|
+
{tags: Engine.tags.to_h}
|
52
|
+
].inject(:merge)
|
51
53
|
}
|
52
54
|
end
|
53
55
|
|
@@ -67,13 +69,42 @@ module Lookbook
|
|
67
69
|
@theme ||= Lookbook::Theme.new(config.ui_theme, config.ui_theme_overrides)
|
68
70
|
end
|
69
71
|
|
70
|
-
def define_param_input(
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
72
|
+
def define_param_input(*args)
|
73
|
+
Engine.inputs.add_input(*args)
|
74
|
+
end
|
75
|
+
|
76
|
+
def define_panel(name, *args)
|
77
|
+
Engine.panels.add_panel(name, :drawer, *args)
|
78
|
+
end
|
79
|
+
|
80
|
+
def amend_panel(*args)
|
81
|
+
Engine.panels.update_panel(*args)
|
82
|
+
end
|
83
|
+
|
84
|
+
def remove_panel(name)
|
85
|
+
Engine.panels.remove_panel(name)
|
86
|
+
end
|
87
|
+
|
88
|
+
def define_tag(name, args = nil, &block)
|
89
|
+
Engine.tags.add_tag(name, {
|
90
|
+
named_args: args.to_a,
|
91
|
+
args_parser: block
|
92
|
+
})
|
93
|
+
end
|
94
|
+
|
95
|
+
def after_initialize(&block)
|
96
|
+
Engine.hooks.add_hook(:after_initialize, block)
|
97
|
+
end
|
98
|
+
|
99
|
+
def before_exit(&block)
|
100
|
+
Engine.hooks.add_hook(:before_exit, block)
|
101
|
+
end
|
102
|
+
|
103
|
+
def after_change(&block)
|
104
|
+
Engine.hooks.add_hook(:after_change, block)
|
75
105
|
end
|
76
106
|
end
|
77
107
|
end
|
78
108
|
|
109
|
+
require "rails"
|
79
110
|
require "lookbook/engine"
|
@@ -1691,6 +1691,25 @@ pre[class*="language-"] {
|
|
1691
1691
|
background-color: rgb(254 252 232 / var(--tw-bg-opacity));
|
1692
1692
|
}
|
1693
1693
|
|
1694
|
+
[data-component="display-options-field"] [type="text"], [data-component="display-options-field"] [type="email"], [data-component="display-options-field"] [type="url"], [data-component="display-options-field"] [type="password"], [data-component="display-options-field"] [type="number"], [data-component="display-options-field"] [type="date"], [data-component="display-options-field"] [type="datetime-local"], [data-component="display-options-field"] [type="month"], [data-component="display-options-field"] [type="search"], [data-component="display-options-field"] [type="tel"], [data-component="display-options-field"] [type="time"], [data-component="display-options-field"] [type="week"], [data-component="display-options-field"] textarea, [data-component="display-options-field"] select {
|
1695
|
+
padding: .26rem .6rem;
|
1696
|
+
font-size: .8rem;
|
1697
|
+
line-height: 1.1rem;
|
1698
|
+
}
|
1699
|
+
|
1700
|
+
[data-component="display-options-field"] label {
|
1701
|
+
cursor: pointer;
|
1702
|
+
color: var(--lookbook-input-text);
|
1703
|
+
font-size: .82rem;
|
1704
|
+
}
|
1705
|
+
|
1706
|
+
[data-component="display-options-field"] select {
|
1707
|
+
background-position: right .4rem center;
|
1708
|
+
background-size: 1.2em 1.2em;
|
1709
|
+
border-radius: .375rem;
|
1710
|
+
padding-right: 1.5rem;
|
1711
|
+
}
|
1712
|
+
|
1694
1713
|
[data-component="icon"] {
|
1695
1714
|
flex: none;
|
1696
1715
|
line-height: 1;
|
@@ -2504,6 +2523,12 @@ input[type="color"]::-webkit-color-swatch {
|
|
2504
2523
|
margin-bottom: calc(.75rem * var(--tw-space-y-reverse));
|
2505
2524
|
}
|
2506
2525
|
|
2526
|
+
.space-x-1\.5 > :not([hidden]) ~ :not([hidden]) {
|
2527
|
+
--tw-space-x-reverse: 0;
|
2528
|
+
margin-right: calc(.375rem * var(--tw-space-x-reverse));
|
2529
|
+
margin-left: calc(.375rem * calc(1 - var(--tw-space-x-reverse)) );
|
2530
|
+
}
|
2531
|
+
|
2507
2532
|
.divide-y > :not([hidden]) ~ :not([hidden]) {
|
2508
2533
|
--tw-divide-y-reverse: 0;
|
2509
2534
|
border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)) );
|
@@ -2926,6 +2951,10 @@ input[type="color"]::-webkit-color-swatch {
|
|
2926
2951
|
line-height: 1rem;
|
2927
2952
|
}
|
2928
2953
|
|
2954
|
+
.text-\[0\.82rem\] {
|
2955
|
+
font-size: .82rem;
|
2956
|
+
}
|
2957
|
+
|
2929
2958
|
.text-lg {
|
2930
2959
|
font-size: 1.125rem;
|
2931
2960
|
line-height: 1.75rem;
|
@@ -3021,6 +3050,10 @@ input[type="color"]::-webkit-color-swatch {
|
|
3021
3050
|
color: var(--lookbook-viewport-handle-icon-stroke);
|
3022
3051
|
}
|
3023
3052
|
|
3053
|
+
.text-lookbook-input-text {
|
3054
|
+
color: var(--lookbook-input-text);
|
3055
|
+
}
|
3056
|
+
|
3024
3057
|
.text-lookbook-nav-text {
|
3025
3058
|
color: var(--lookbook-nav-text);
|
3026
3059
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"mappings":"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
|
1
|
+
{"mappings":"AAKE;;;;;AAOD;;;;AAQC;;;;;;;AASA;;;;;AAOA;;;;;;AAMA;;;;AAIA;;;;;AAUA;;;;;AAKA;;;;AAMA;;;;;AAQA;;;;AAIA;;;;;;;AAMD;;;;AAEA;;;;AAMC;;;;;;AAQA;;;;;;;;;;AAcA;;;;AAMA;;;;;;AASA;;;;AAIA;;;;AAIA;;;;AAIA;;;;AAMA;;;;;AAKA;;;;AAKA;;;;;AAKA;;;;AAIA;;;;AAcD;;;;;AAGA;;;;AAEA;;;;;;AAQC;;;;AAKA;;;;;AAMA;;;;AAKA;;;;AAMA;;;;;AAYA;;;;;AAID;;;;;;;;;;;;AAaA;;;;;;;;;;;;;AAWA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;;;;;AAOA;;;;;;;;;AAOA;;;;;;;;;;;;;;;;;;;AAgBA;;;;AAEA;;;;AAEA;;;;;;;;;;;;AAUA;;;;;;;;AAMA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;;;;;AAOA;;;;;AAGA;;;;;;;;;;AAQA;;;;;AAGA;;;;;AAGA;EACG;;;;;AAGD;;;;;;;;;;AAQF;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;;;;;;AAOA;;;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0FA;;;;;;;;;;;;AAaA;;;;;;;;;;;;;AAWA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;;;;;AAMA;;;;;;AAIA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;;;AAKA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;;;AAKA;;;;;AAGA;;;;AAEA;;;;;;;AAKA;;;;;;;;;;;;AAUA;;;;AAEA;;;;AAEA;;;;;;;;;AAOA;;;;;AAGA;;;;;;;;;AAOA;;;;;AAGA;;;;;;;;;AAOA;;;;;AAGA;;;;;;;;AAMA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;;;AAKA;;;;;;AAIA;;;;AAIA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;;;;;;;;;AAcA;;;;;;;;;;;;AAUA;;;;AAIA;;;;;;;;;;AAQA;;;;;AAGA;;;;;;;;;AAOA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAKA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;;;;AAKA;;;;;;AAIA;;;;;;;AAKA;;;;;;;AAKA;;;;;;;AAKA;;;;;;AAIA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;;AAIA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;;;;;AAUA;;;;;;AAIA;;;;;;AAIA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;;AAIA;;;;AAEA;;;;AAEA;;;;AAKA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;;;;AAKA;;;;;;AAIA;;;;;;;AAKA;;;;;;;AAKA;;;;;;;AAKA;;;;;;AAIA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;;AAIA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;;;;;AAUA;;;;;;AAIA;;;;;;AAIA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;;AAIA;;;;AAEA;;;;AAEA;;;;AAKA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;;;AAKM;;;;;AAMA;;;;AAIA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;;AAIA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAUA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;;AAMA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAQA;;;;AAgBA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAMA;;;;AAEA;;;;;AAGA;;;;;;;;AAMN;;;;;AAGI;;;;;;;AAKc;;;;AAElB;;;;;;;;AAMM;;;;;;;;;;;;;;;;;AAcA;;;;;;;;AAMA;;;;;AAGN;;;;;AAGgC;;;;AAEhC;;;;;AAGA;;;;;;AAiBI;;;;;;AAIJ;;;;;;;AAKI;;;;;;;;;AAOJ;;;;;;;;;;AAQA;;;;;AAGA;;;;;;AAIA;;;;;;;AAQA;;;;AAEQ;;;;AAEA;;;;;;AAIR;;;;;AAMA;;;;AAEA;;;;AAEQ;;;;AAIF;;;;AAGA;;;;;;AAIN;;;;;;AAIA;;;;;AAGA;;;;;;AAIA;;;;AAEA;;;;AAEA;;;;;;AAIA;;;;;AAIA;;;;;AAGA;;;;AAEA;;;;;;;;AAMA;;;;;AAGI;;;;;;;AAKJ;;;;;AAGE;;;;;;;;;;AAQF;;;;;AAGA;;;;;;;;;;AAOA;;;;AAEA;;;;AAeA;;;;;AAgBA;;;;AAeA;;;;;AAgBA;;;;;;;;;AAoBA;;;;;;;AAME;;;;AAEA;;;;;;AAIF;;;;;;;;;AAQE;;;;;;AAIF;;;;;;;;AAMA;;;;;;AAKA;;;;;;;;;AAOE;;;;AAEA;;;;;AAGF;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAKA;;;;AAKA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;;AAKA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;;AAIA;;;;;;AAIA;;;;;;AAIA;;;;;;AAIA;;;;;;AAIA;;;;;;AAIA;;;;;;AAIA;;;;;;AAIA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;;AAIA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;;AAIA;;;;;;AAIA;;;;;AAGA;;;;AAEA;;;;;;AAIA;;;;;;AAIA;;;;;;AAIA;;;;;;AAIA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAA6D;;;;AAA+C;;;;;;;;;;;;AAA6L;;;;AAAsD;;;;;;;;AAAmJ;;;;AAAsD;;;;;;;;AAAyJ;;;;AAAsD;;;;;;;AAAkJ;;;;AAAsD;;;;;;;AAAoJ;;;;AAAuG;;;;;;AAA+C;;;;;;;AAA6F;;;;;;AAA2D;;;;AAAkC;;;;;;;AAAsH;;;;;;;AAAyH;;;;;;;AAA0H;;;;;;;AAA2H;;;;AAA2F;;;;AAAiG;;;;AAA6F;;;;AAA+F;;;;AAAkC;;;;;;;;AAAuG;;;;;;;;AAOx4E;;;;AAEE;;;;AAEA;;;;AAEA;;;;AAEA;;;;;;;;;;;AASF;;;;;;AAIA;;;;AAEE;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEF;;;;AAEA;;;;;AAGA;;;;;AAGA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;AAEA;;;;;AAGA;;;;;;AAIA;;;;;;AAIA;;;;AAEA;;;;;AAGA;;;;AAEA;EAEC;;;;;EAKA","sources":["app/assets/lookbook/css/lookbook.css"],"sourcesContent":["@import \"tailwindcss/base\";\n@import \"tailwindcss/components\";\n@import \"tailwindcss/utilities\";\n\n@import \"./tooltip.css\";\n\n@import-glob \"../../../components/lookbook/**/*/component.css\";\n\n@layer base {\n html {\n @apply scroll-smooth h-screen;\n }\n\n @media screen and (prefers-reduced-motion: reduce) {\n html {\n @apply scroll-auto;\n }\n }\n\n body {\n @apply text-lookbook-text font-sans text-sm antialiased overflow-hidden;\n }\n\n [x-cloak] {\n @apply !hidden;\n }\n\n pre[class*=\"language-\"] {\n @apply !p-0 !m-0;\n }\n\n ::-webkit-scrollbar {\n @apply w-1 h-1;\n }\n\n ::-webkit-scrollbar-track {\n @apply bg-transparent;\n }\n\n ::-webkit-scrollbar-thumb {\n @apply transition-colors rounded-full\tbg-clip-content bg-lookbook-scrollbar;\n }\n\n ::-webkit-scrollbar-thumb:hover {\n @apply bg-lookbook-scrollbar-hover;\n }\n}\n\n@layer components {\n [type=\"text\"],\n [type=\"email\"],\n [type=\"url\"],\n [type=\"password\"],\n [type=\"number\"],\n [type=\"date\"],\n [type=\"datetime-local\"],\n [type=\"month\"],\n [type=\"search\"],\n [type=\"tel\"],\n [type=\"time\"],\n [type=\"week\"],\n textarea,\n select {\n @apply text-lookbook-input-text placeholder:text-lookbook-input-text-placeholder placeholder:italic;\n @apply border-lookbook-input-border focus:ring-lookbook-input-border-focus focus:border-lookbook-input-border-focus;\n @apply rounded-md text-sm w-full bg-lookbook-input-bg block;\n }\n\n input[type=\"range\"] {\n -webkit-appearance: none;\n appearance: none;\n background: transparent;\n cursor: pointer;\n width: 100%;\n }\n\n input[type=\"range\"]:focus {\n outline: none;\n }\n\n input[type=\"range\"]::-webkit-slider-runnable-track {\n @apply bg-lookbook-input-toggle;\n border-radius: 0.5rem;\n height: 0.5rem;\n }\n\n input[type=\"range\"]::-webkit-slider-thumb {\n -webkit-appearance: none;\n appearance: none;\n @apply bg-lookbook-input-toggle-active;\n margin-top: -4px;\n border-radius: 0.5rem;\n height: 1rem;\n width: 1rem;\n }\n\n input[type=\"range\"]::-moz-range-track {\n @apply bg-lookbook-input-toggle;\n border-radius: 0.5rem;\n height: 0.5rem;\n }\n\n input[type=\"range\"]::-moz-range-thumb {\n @apply bg-lookbook-input-toggle-active;\n border: none;\n border-radius: 0.5rem;\n height: 1rem;\n width: 1rem;\n }\n\n input[type=\"range\"]:focus::-webkit-slider-thumb,\n input[type=\"range\"]:focus::-moz-range-thumb {\n @apply outline-1 outline-lookbook-input-toggle-active outline-offset-2;\n }\n\n input[type=\"color\"] {\n -webkit-appearance: none;\n width: 46px;\n @apply border border-lookbook-input-border rounded-lg cursor-pointer;\n }\n\n input[type=\"color\"]::-webkit-color-swatch-wrapper {\n padding: 0;\n }\n\n input[type=\"color\"]::-webkit-color-swatch {\n @apply border-0 rounded-lg;\n }\n}\n"],"names":[],"version":3,"file":"lookbook.css.map"}
|