lookbook 2.2.0 → 2.2.2
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 +4 -4
- data/README.md +5 -1
- data/app/controllers/lookbook/application_controller.rb +2 -0
- data/app/controllers/lookbook/embeds_controller.rb +1 -1
- data/app/controllers/lookbook/previews_controller.rb +1 -1
- data/config/app.yml +1 -0
- data/lib/lookbook/stores/config_store.rb +4 -0
- data/lib/lookbook/theme.rb +2 -6
- data/lib/lookbook/version.rb +1 -1
- data/public/lookbook-assets/js/index.js +60 -44
- data/public/lookbook-assets/js/index.js.map +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8bb30f67eba8a56b3e6638e5671e493580bee97045acaeeeaa25a9bc1d92801a
|
4
|
+
data.tar.gz: 45ed40efdc4715461fa05217c5514103975182dca010fe754df54bd0572be450
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e1cd96f2564bd3c4dbb3b4343f31505006403b5260ab47ede3dafb4514d40b406d6c25d6702323a69b36bd8af951b72918a55c04c1cb0c28473802cf169dd22f
|
7
|
+
data.tar.gz: 99650923f94a8e6c9e1bce12c0f292adabcfc0ffde22cc0cf881689d6171aacb14c34f9bb16e6b05b63aa32240802e52809a79ccfd990c9875c8744d99daa18c
|
data/README.md
CHANGED
@@ -14,10 +14,14 @@
|
|
14
14
|
---
|
15
15
|
|
16
16
|
<div align="center">
|
17
|
-
Lookbook combines a powerful <strong>component browser</strong> and <strong>preview system</strong> with an <strong>integrated documentation engine</strong> to help teams build robust, modular, maintainable user interfaces
|
17
|
+
Lookbook combines a powerful <strong>component browser</strong> and <strong>preview system</strong> with an <strong>integrated documentation engine</strong> to help teams build robust, modular, maintainable user interfaces.<br><br>
|
18
|
+
It's compatible with <a href="https://viewcomponent.org/">ViewComponent</a>, <a href="https://www.phlex.fun/">Phlex</a>, ActionView partials and more.
|
19
|
+
<br><br>
|
20
|
+
<a href="https://lookbook.build"><strong>Read the docs →</strong></a>
|
18
21
|
|
19
22
|
</div>
|
20
23
|
|
24
|
+
|
21
25
|
---
|
22
26
|
|
23
27
|
[](http://lookbook.build/)
|
@@ -21,7 +21,7 @@ module Lookbook
|
|
21
21
|
if props.preview.present?
|
22
22
|
preview = Engine.previews.find_by_preview_class(props.preview)
|
23
23
|
if preview.present?
|
24
|
-
props.scenarios ||=
|
24
|
+
props.scenarios ||= props.scenario || ""
|
25
25
|
scenario = preview.scenario(Array(props.scenarios).first)
|
26
26
|
|
27
27
|
boolean_options = ["display_option_controls"]
|
@@ -68,7 +68,7 @@ module Lookbook
|
|
68
68
|
|
69
69
|
def permit_framing
|
70
70
|
headers["X-Frame-Options"] = Lookbook.config.preview_embeds.policy if embedded?
|
71
|
-
headers["X-Frame-Options"] = "SAMEORIGIN" if headers["X-Frame-Options"]
|
71
|
+
headers["X-Frame-Options"] = "SAMEORIGIN" if headers["X-Frame-Options"]&.upcase == "DENY"
|
72
72
|
end
|
73
73
|
end
|
74
74
|
end
|
data/config/app.yml
CHANGED
@@ -59,6 +59,10 @@ module Lookbook
|
|
59
59
|
store[:highlighter_options].merge!(options.to_h)
|
60
60
|
end
|
61
61
|
|
62
|
+
def preview_disable_error_handling=(value)
|
63
|
+
store[:preview_disable_error_handling] = value
|
64
|
+
end
|
65
|
+
|
62
66
|
def ui_theme=(name)
|
63
67
|
name = name.to_s
|
64
68
|
if Theme.valid_theme?(name)
|
data/lib/lookbook/theme.rb
CHANGED
@@ -30,19 +30,15 @@ module Lookbook
|
|
30
30
|
end
|
31
31
|
|
32
32
|
def favicon_light_mode
|
33
|
-
|
34
|
-
@overrides[:favicon_light_mode].presence ||
|
33
|
+
@overrides[:favicon_light_mode].presence ||
|
35
34
|
@overrides[:favicon].presence ||
|
36
35
|
BASE_THEMES[@base_theme.to_sym][:favicon_light_mode]
|
37
|
-
)
|
38
36
|
end
|
39
37
|
|
40
38
|
def favicon_dark_mode
|
41
|
-
|
42
|
-
@overrides[:favicon_dark_mode].presence ||
|
39
|
+
@overrides[:favicon_dark_mode].presence ||
|
43
40
|
@overrides[:favicon].presence ||
|
44
41
|
BASE_THEMES[@base_theme.to_sym][:favicon_dark_mode]
|
45
|
-
)
|
46
42
|
end
|
47
43
|
|
48
44
|
def to_css
|
data/lib/lookbook/version.rb
CHANGED
@@ -6524,12 +6524,23 @@ var $69a8ec8dbeef3157$var$buildConfigFromModifiers = (modifiers)=>{
|
|
6524
6524
|
if (modifiers.includes("max-width")) config.maxWidth = parseInt(getModifierArgument("max-width"));
|
6525
6525
|
if (modifiers.includes("theme")) config.theme = getModifierArgument("theme");
|
6526
6526
|
if (modifiers.includes("placement")) config.placement = getModifierArgument("placement");
|
6527
|
+
const popperOptions = {};
|
6528
|
+
if (modifiers.includes("no-flip")) {
|
6529
|
+
popperOptions.modifiers ||= [];
|
6530
|
+
popperOptions.modifiers.push({
|
6531
|
+
name: "flip",
|
6532
|
+
enabled: false
|
6533
|
+
});
|
6534
|
+
}
|
6535
|
+
config.popperOptions = popperOptions;
|
6527
6536
|
return config;
|
6528
6537
|
};
|
6529
6538
|
// src/index.js
|
6530
|
-
function $69a8ec8dbeef3157$var$
|
6539
|
+
function $69a8ec8dbeef3157$var$Tooltip(Alpine) {
|
6531
6540
|
Alpine.magic("tooltip", (el)=>{
|
6532
6541
|
return (content, config = {})=>{
|
6542
|
+
const timeout = config.timeout;
|
6543
|
+
delete config.timeout;
|
6533
6544
|
const instance = (0, $69a8ec8dbeef3157$var$import_tippy2.default)(el, {
|
6534
6545
|
content: content,
|
6535
6546
|
trigger: "manual",
|
@@ -6539,7 +6550,7 @@ function $69a8ec8dbeef3157$var$src_default(Alpine) {
|
|
6539
6550
|
setTimeout(()=>{
|
6540
6551
|
instance.hide();
|
6541
6552
|
setTimeout(()=>instance.destroy(), config.duration || 300);
|
6542
|
-
},
|
6553
|
+
}, timeout || 2e3);
|
6543
6554
|
};
|
6544
6555
|
});
|
6545
6556
|
Alpine.directive("tooltip", (el, { modifiers: modifiers, expression: expression }, { evaluateLater: evaluateLater, effect: effect })=>{
|
@@ -6568,6 +6579,11 @@ function $69a8ec8dbeef3157$var$src_default(Alpine) {
|
|
6568
6579
|
}
|
6569
6580
|
});
|
6570
6581
|
}
|
6582
|
+
$69a8ec8dbeef3157$var$Tooltip.defaultProps = (props)=>{
|
6583
|
+
$69a8ec8dbeef3157$var$import_tippy2.default.setDefaultProps(props);
|
6584
|
+
return $69a8ec8dbeef3157$var$Tooltip;
|
6585
|
+
};
|
6586
|
+
var $69a8ec8dbeef3157$var$src_default = $69a8ec8dbeef3157$var$Tooltip;
|
6571
6587
|
// builds/module.js
|
6572
6588
|
var $69a8ec8dbeef3157$export$2e2bcd8739ae039 = $69a8ec8dbeef3157$var$src_default;
|
6573
6589
|
|
@@ -7972,7 +7988,7 @@ function $12b7aa006b8a97e1$var$toCamel(s) {
|
|
7972
7988
|
}
|
7973
7989
|
|
7974
7990
|
|
7975
|
-
var $
|
7991
|
+
var $e29b71de1c821c6e$exports = {};
|
7976
7992
|
var $cbd28b10fa9798c7$exports = {};
|
7977
7993
|
|
7978
7994
|
$parcel$defineInteropFlag($cbd28b10fa9798c7$exports);
|
@@ -11491,16 +11507,6 @@ function $cbd28b10fa9798c7$export$2e2bcd8739ae039() {
|
|
11491
11507
|
}
|
11492
11508
|
|
11493
11509
|
|
11494
|
-
var $99486586f6691564$exports = {};
|
11495
|
-
|
11496
|
-
$parcel$defineInteropFlag($99486586f6691564$exports);
|
11497
|
-
|
11498
|
-
$parcel$export($99486586f6691564$exports, "default", () => $99486586f6691564$export$2e2bcd8739ae039);
|
11499
|
-
function $99486586f6691564$export$2e2bcd8739ae039() {
|
11500
|
-
return {};
|
11501
|
-
}
|
11502
|
-
|
11503
|
-
|
11504
11510
|
var $47a1c62621be0c54$exports = {};
|
11505
11511
|
|
11506
11512
|
$parcel$defineInteropFlag($47a1c62621be0c54$exports);
|
@@ -11557,6 +11563,16 @@ function $47a1c62621be0c54$export$2e2bcd8739ae039() {
|
|
11557
11563
|
}
|
11558
11564
|
|
11559
11565
|
|
11566
|
+
var $99486586f6691564$exports = {};
|
11567
|
+
|
11568
|
+
$parcel$defineInteropFlag($99486586f6691564$exports);
|
11569
|
+
|
11570
|
+
$parcel$export($99486586f6691564$exports, "default", () => $99486586f6691564$export$2e2bcd8739ae039);
|
11571
|
+
function $99486586f6691564$export$2e2bcd8739ae039() {
|
11572
|
+
return {};
|
11573
|
+
}
|
11574
|
+
|
11575
|
+
|
11560
11576
|
var $e398acaded942bbe$exports = {};
|
11561
11577
|
|
11562
11578
|
$parcel$defineInteropFlag($e398acaded942bbe$exports);
|
@@ -12219,6 +12235,33 @@ function $506dabb2bf255b38$var$sizeSplits(sizes) {
|
|
12219
12235
|
}
|
12220
12236
|
|
12221
12237
|
|
12238
|
+
var $a87dacf5139b5e2f$exports = {};
|
12239
|
+
|
12240
|
+
$parcel$defineInteropFlag($a87dacf5139b5e2f$exports);
|
12241
|
+
|
12242
|
+
$parcel$export($a87dacf5139b5e2f$exports, "default", () => $a87dacf5139b5e2f$export$2e2bcd8739ae039);
|
12243
|
+
function $a87dacf5139b5e2f$export$2e2bcd8739ae039(store) {
|
12244
|
+
return {
|
12245
|
+
get store () {
|
12246
|
+
return store || this;
|
12247
|
+
},
|
12248
|
+
get id () {
|
12249
|
+
return this.$root.id;
|
12250
|
+
},
|
12251
|
+
get panels () {
|
12252
|
+
return Array.from(this.$refs.panels.children);
|
12253
|
+
},
|
12254
|
+
isActive (el) {
|
12255
|
+
return this.store.activeTab === this._getRef(el);
|
12256
|
+
},
|
12257
|
+
// protected
|
12258
|
+
_getRef (el) {
|
12259
|
+
return el.getAttribute("x-ref");
|
12260
|
+
}
|
12261
|
+
};
|
12262
|
+
}
|
12263
|
+
|
12264
|
+
|
12222
12265
|
var $0db07828cadc68e0$exports = {};
|
12223
12266
|
|
12224
12267
|
$parcel$defineInteropFlag($0db07828cadc68e0$exports);
|
@@ -12312,33 +12355,6 @@ function $0db07828cadc68e0$export$2e2bcd8739ae039(store) {
|
|
12312
12355
|
}
|
12313
12356
|
|
12314
12357
|
|
12315
|
-
var $a87dacf5139b5e2f$exports = {};
|
12316
|
-
|
12317
|
-
$parcel$defineInteropFlag($a87dacf5139b5e2f$exports);
|
12318
|
-
|
12319
|
-
$parcel$export($a87dacf5139b5e2f$exports, "default", () => $a87dacf5139b5e2f$export$2e2bcd8739ae039);
|
12320
|
-
function $a87dacf5139b5e2f$export$2e2bcd8739ae039(store) {
|
12321
|
-
return {
|
12322
|
-
get store () {
|
12323
|
-
return store || this;
|
12324
|
-
},
|
12325
|
-
get id () {
|
12326
|
-
return this.$root.id;
|
12327
|
-
},
|
12328
|
-
get panels () {
|
12329
|
-
return Array.from(this.$refs.panels.children);
|
12330
|
-
},
|
12331
|
-
isActive (el) {
|
12332
|
-
return this.store.activeTab === this._getRef(el);
|
12333
|
-
},
|
12334
|
-
// protected
|
12335
|
-
_getRef (el) {
|
12336
|
-
return el.getAttribute("x-ref");
|
12337
|
-
}
|
12338
|
-
};
|
12339
|
-
}
|
12340
|
-
|
12341
|
-
|
12342
12358
|
var $6d64716f0b34fdf4$exports = {};
|
12343
12359
|
|
12344
12360
|
$parcel$defineInteropFlag($6d64716f0b34fdf4$exports);
|
@@ -12466,17 +12482,17 @@ function $6d64716f0b34fdf4$export$2e2bcd8739ae039(store) {
|
|
12466
12482
|
}
|
12467
12483
|
|
12468
12484
|
|
12469
|
-
$
|
12485
|
+
$e29b71de1c821c6e$exports = {
|
12470
12486
|
"button": $cbd28b10fa9798c7$exports,
|
12471
|
-
"code": $99486586f6691564$exports,
|
12472
12487
|
"copy_button": $47a1c62621be0c54$exports,
|
12488
|
+
"code": $99486586f6691564$exports,
|
12473
12489
|
"dimensions_display": $e398acaded942bbe$exports,
|
12474
12490
|
"embed_code_dropdown": $216ef7001f59f21d$exports,
|
12475
12491
|
"filter": $e9904a14dabf652d$exports,
|
12476
12492
|
"nav": $d92d9d5253f84566$exports,
|
12477
12493
|
"split_layout": $506dabb2bf255b38$exports,
|
12478
|
-
"tabs": $0db07828cadc68e0$exports,
|
12479
12494
|
"tab_panels": $a87dacf5139b5e2f$exports,
|
12495
|
+
"tabs": $0db07828cadc68e0$exports,
|
12480
12496
|
"viewport": $6d64716f0b34fdf4$exports
|
12481
12497
|
};
|
12482
12498
|
|
@@ -13661,7 +13677,7 @@ const $22969b543678f572$var$prefix = window.APP_NAME;
|
|
13661
13677
|
// Components
|
13662
13678
|
(0, $caa9439642c6336c$export$2e2bcd8739ae039).data("app", (0, $5792afa4170ed552$export$2e2bcd8739ae039));
|
13663
13679
|
[
|
13664
|
-
$
|
13680
|
+
$e29b71de1c821c6e$exports,
|
13665
13681
|
$6178ee12f80cbf68$exports,
|
13666
13682
|
$d56e5cced44001d2$exports
|
13667
13683
|
].forEach((scripts)=>{
|