@schalkneethling/miyagi-core 4.0.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.
- package/LICENSE.md +21 -0
- package/README.md +43 -0
- package/api/app.js +39 -0
- package/api/index.js +236 -0
- package/bin/miyagi.js +2 -0
- package/dist/css/iframe.css +31 -0
- package/dist/css/main.css +1 -0
- package/dist/js/_iframe-links-DdifIr4P.js +1 -0
- package/dist/js/_mock-data-Dypo4Bl_.js +1 -0
- package/dist/js/_prism-By3NMwUd.js +1 -0
- package/dist/js/iframe.build.js +1 -0
- package/dist/js/iframe.js +1 -0
- package/dist/js/index-BKDKaBC6.js +1 -0
- package/dist/js/jsontree.js +1 -0
- package/dist/js/main.build.js +1 -0
- package/dist/js/main.js +1 -0
- package/frontend/assets/css/iframe/accordion-tabs.css +77 -0
- package/frontend/assets/css/iframe/jsontree.js.css +325 -0
- package/frontend/assets/css/iframe/prism.css +132 -0
- package/frontend/assets/css/iframe/styleguide/colors.css +61 -0
- package/frontend/assets/css/iframe/styleguide/fonts.css +37 -0
- package/frontend/assets/css/iframe/styleguide/index.css +109 -0
- package/frontend/assets/css/iframe/styleguide/spacings.css +21 -0
- package/frontend/assets/css/iframe.css +410 -0
- package/frontend/assets/css/main/menu/config-switcher.css +49 -0
- package/frontend/assets/css/main/menu/config-switchers.css +67 -0
- package/frontend/assets/css/main/menu/goto.css +24 -0
- package/frontend/assets/css/main/menu/nav.css +113 -0
- package/frontend/assets/css/main/menu/search.css +64 -0
- package/frontend/assets/css/main/menu/title.css +40 -0
- package/frontend/assets/css/main/menu.css +114 -0
- package/frontend/assets/css/main/reset.css +217 -0
- package/frontend/assets/css/main.css +71 -0
- package/frontend/assets/css/shared.css +34 -0
- package/frontend/assets/css/tokens.css +112 -0
- package/frontend/assets/favicon.ico +0 -0
- package/frontend/assets/js/_accordion-tabs.js +403 -0
- package/frontend/assets/js/_goto.js +63 -0
- package/frontend/assets/js/_iframe-links.js +19 -0
- package/frontend/assets/js/_is-triggered.js +15 -0
- package/frontend/assets/js/_main.js +379 -0
- package/frontend/assets/js/_mock-data.js +13 -0
- package/frontend/assets/js/_prism.js +1098 -0
- package/frontend/assets/js/_search.js +190 -0
- package/frontend/assets/js/_socket.js +9 -0
- package/frontend/assets/js/config-switcher/development-mode.js +49 -0
- package/frontend/assets/js/config-switcher/index.js +63 -0
- package/frontend/assets/js/config-switcher/text-direction.js +30 -0
- package/frontend/assets/js/config-switcher/theme.js +87 -0
- package/frontend/assets/js/iframe.build.js +43 -0
- package/frontend/assets/js/iframe.js +52 -0
- package/frontend/assets/js/jsontree.js +979 -0
- package/frontend/assets/js/main.build.js +40 -0
- package/frontend/assets/js/main.js +42 -0
- package/frontend/assets/js/styleguide/color-converter.js +741 -0
- package/frontend/assets/js/styleguide/index.js +119 -0
- package/frontend/views/component_variation.twig.miyagi +57 -0
- package/frontend/views/design-tokens/colors.twig.miyagi +43 -0
- package/frontend/views/design-tokens/sizes.twig.miyagi +35 -0
- package/frontend/views/design-tokens/typography.twig.miyagi +38 -0
- package/frontend/views/iframe_component.twig.miyagi +141 -0
- package/frontend/views/iframe_component_variation.twig.miyagi +55 -0
- package/frontend/views/iframe_index.twig.miyagi +14 -0
- package/frontend/views/layouts/iframe_default.twig.miyagi +22 -0
- package/frontend/views/main.twig.miyagi +24 -0
- package/frontend/views/menu/config-switchers.twig.miyagi +83 -0
- package/frontend/views/menu/goto.twig.miyagi +9 -0
- package/frontend/views/menu/menu.twig.miyagi +21 -0
- package/frontend/views/menu/nav.twig.miyagi +95 -0
- package/frontend/views/menu/search.twig.miyagi +13 -0
- package/frontend/views/menu/title.twig.miyagi +24 -0
- package/index.js +3 -0
- package/lib/build/index.js +1020 -0
- package/lib/cli/app.js +38 -0
- package/lib/cli/component.js +56 -0
- package/lib/cli/index.js +5 -0
- package/lib/cli/lint.js +180 -0
- package/lib/config.js +74 -0
- package/lib/default-config.js +105 -0
- package/lib/generator/component.js +199 -0
- package/lib/generator/mocks.js +201 -0
- package/lib/helpers.js +184 -0
- package/lib/i18n/en.js +91 -0
- package/lib/i18n/index.js +17 -0
- package/lib/index.js +166 -0
- package/lib/init/args.js +55 -0
- package/lib/init/config.js +330 -0
- package/lib/init/engines.js +65 -0
- package/lib/init/index.js +102 -0
- package/lib/init/rendering.js +12 -0
- package/lib/init/router.js +249 -0
- package/lib/init/static.js +133 -0
- package/lib/init/twing/cache.js +34 -0
- package/lib/init/twing/functions.js +51 -0
- package/lib/init/views.js +19 -0
- package/lib/init/watcher.js +402 -0
- package/lib/logger.js +94 -0
- package/lib/mocks/get.js +111 -0
- package/lib/mocks/index.js +9 -0
- package/lib/mocks/resolve/ref.js +484 -0
- package/lib/mocks/resolve/tpl.js +246 -0
- package/lib/mocks/resolve.js +205 -0
- package/lib/render/helpers.js +51 -0
- package/lib/render/index.js +38 -0
- package/lib/render/views/iframe/component.docs.js +77 -0
- package/lib/render/views/iframe/component.js +338 -0
- package/lib/render/views/iframe/design-tokens/colors.js +52 -0
- package/lib/render/views/iframe/design-tokens/index.js +9 -0
- package/lib/render/views/iframe/design-tokens/sizes.js +49 -0
- package/lib/render/views/iframe/design-tokens/typography.js +52 -0
- package/lib/render/views/iframe/docs.js +68 -0
- package/lib/render/views/iframe/index.js +44 -0
- package/lib/render/views/iframe/variation.js +116 -0
- package/lib/render/views/iframe/variation.standalone.js +89 -0
- package/lib/render/views/main/component.docs.js +53 -0
- package/lib/render/views/main/component.js +74 -0
- package/lib/render/views/main/design-tokens.js +53 -0
- package/lib/render/views/main/docs.js +47 -0
- package/lib/render/views/main/index.js +46 -0
- package/lib/state/components.js +132 -0
- package/lib/state/css.js +50 -0
- package/lib/state/docs.js +111 -0
- package/lib/state/file-contents.js +207 -0
- package/lib/state/helpers.js +86 -0
- package/lib/state/index.js +56 -0
- package/lib/state/menu/index.js +275 -0
- package/lib/state/menu/structure.js +146 -0
- package/lib/state/partials.js +23 -0
- package/lib/state/source-tree.js +75 -0
- package/lib/styleguide/color-names.js +150 -0
- package/lib/styleguide/colors.js +135 -0
- package/lib/styleguide/helpers.js +37 -0
- package/lib/styleguide/index.js +17 -0
- package/lib/styleguide/media-queries.js +26 -0
- package/lib/styleguide/spacings.js +35 -0
- package/lib/styleguide/typography.js +61 -0
- package/lib/validator/mocks.js +105 -0
- package/package.json +117 -0
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/* PrismJS 1.21.0
|
|
2
|
+
* https://prismjs.com/download.html#themes=prism-dark&languages=markup+json+yaml
|
|
3
|
+
* prism.js Dark theme for JavaScript, CSS and HTML
|
|
4
|
+
* Based on the slides of the talk “/Reg(exp){2}lained/”
|
|
5
|
+
* @author Lea Verou
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
.Code {
|
|
9
|
+
--color: light-dark(black, white);
|
|
10
|
+
--text-shadow: light-dark(white, black);
|
|
11
|
+
--background: light-dark(#f5f2f0, hsl(30deg 20% 25%));
|
|
12
|
+
--color-comment: light-dark(hsl(30deg 0% 40%), hsl(30deg 0% 60%));
|
|
13
|
+
--color-property: light-dark(#d9173e, hsl(348deg 100% 68%));
|
|
14
|
+
--color-selector: light-dark(hsl(80deg 100% 24%), #8dd203);
|
|
15
|
+
--color-operator: light-dark(#7a4613, hsl(30deg 73% 50%));
|
|
16
|
+
--color-atrule: light-dark(#07a, hsl(350deg 40% 70%));
|
|
17
|
+
--color-function: #dd4a68;
|
|
18
|
+
--color-regex: #e90;
|
|
19
|
+
--color-deleted: red;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
code[class*="language-"],
|
|
23
|
+
pre[class*="language-"] {
|
|
24
|
+
color: var(--color);
|
|
25
|
+
background: none;
|
|
26
|
+
text-shadow: 0 -0.1em 0.2em var(--text-shadow);
|
|
27
|
+
font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
|
|
28
|
+
font-size: 1em;
|
|
29
|
+
text-align: start;
|
|
30
|
+
white-space: pre;
|
|
31
|
+
word-spacing: normal;
|
|
32
|
+
word-break: normal;
|
|
33
|
+
overflow-wrap: normal;
|
|
34
|
+
line-height: 1.5;
|
|
35
|
+
tab-size: 4;
|
|
36
|
+
hyphens: none;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
pre[class*="language-"],
|
|
40
|
+
:not(pre) > code[class*="language-"] {
|
|
41
|
+
background: var(--background);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/* Code blocks */
|
|
45
|
+
pre[class*="language-"] {
|
|
46
|
+
padding: 1em;
|
|
47
|
+
margin: 0.5em 0;
|
|
48
|
+
overflow: auto;
|
|
49
|
+
border-radius: 0.5em;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/* Inline code */
|
|
53
|
+
:not(pre) > code[class*="language-"] {
|
|
54
|
+
padding: 0.15em 0.2em 0.05em;
|
|
55
|
+
border-radius: 0.3em;
|
|
56
|
+
white-space: normal;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.token.comment,
|
|
60
|
+
.token.prolog,
|
|
61
|
+
.token.doctype,
|
|
62
|
+
.token.cdata {
|
|
63
|
+
color: var(--color-comment);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.token.punctuation {
|
|
67
|
+
opacity: 0.7;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.token.namespace {
|
|
71
|
+
opacity: 0.7;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.token.property,
|
|
75
|
+
.token.tag,
|
|
76
|
+
.token.boolean,
|
|
77
|
+
.token.number,
|
|
78
|
+
.token.constant,
|
|
79
|
+
.token.symbol {
|
|
80
|
+
color: var(--color-property);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.token.selector,
|
|
84
|
+
.token.attr-name,
|
|
85
|
+
.token.string,
|
|
86
|
+
.token.char,
|
|
87
|
+
.token.builtin,
|
|
88
|
+
.token.inserted {
|
|
89
|
+
color: var(--color-selector);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.token.operator,
|
|
93
|
+
.token.entity,
|
|
94
|
+
.token.url,
|
|
95
|
+
.language-css .token.string,
|
|
96
|
+
.style .token.string {
|
|
97
|
+
color: var(--color-operator);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.token.atrule,
|
|
101
|
+
.token.attr-value,
|
|
102
|
+
.token.keyword {
|
|
103
|
+
color: var(--color-atrule);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.token.function,
|
|
107
|
+
.token.class-name {
|
|
108
|
+
color: var(--color-function);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.token.regex,
|
|
112
|
+
.token.important,
|
|
113
|
+
.token.variable {
|
|
114
|
+
color: var(--color-regex);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
.token.important,
|
|
118
|
+
.token.bold {
|
|
119
|
+
font-weight: bold;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.token.italic {
|
|
123
|
+
font-style: italic;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.token.entity {
|
|
127
|
+
cursor: help;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
.token.deleted {
|
|
131
|
+
color: var(--color-deleted);
|
|
132
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
.Colors {
|
|
2
|
+
display: grid;
|
|
3
|
+
grid-template-columns: repeat(auto-fill, minmax(14em, 1fr));
|
|
4
|
+
gap: 3em;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.Colors-button {
|
|
8
|
+
--size: 3em;
|
|
9
|
+
|
|
10
|
+
display: flex;
|
|
11
|
+
flex-wrap: wrap;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.Colors-button::before,
|
|
15
|
+
.Colors-button::after {
|
|
16
|
+
display: block;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.Colors--all .Colors-button::before {
|
|
20
|
+
margin-inline-end: 10px;
|
|
21
|
+
width: var(--size);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.Colors--all .Colors-button::before,
|
|
25
|
+
.Colors--decoration .Colors-button::before {
|
|
26
|
+
height: var(--size);
|
|
27
|
+
background: var(--color);
|
|
28
|
+
border: 1px solid var(--backdrop, transparent);
|
|
29
|
+
content: "";
|
|
30
|
+
order: -1;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.Colors--decoration .Colors-button::before {
|
|
34
|
+
width: 100%;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.Colors--all .Colors-button::after,
|
|
38
|
+
.Colors--typo .Colors-button::after {
|
|
39
|
+
font-size: var(--size);
|
|
40
|
+
color: var(--color);
|
|
41
|
+
font-weight: bold;
|
|
42
|
+
order: -1;
|
|
43
|
+
/* stylelint-disable */
|
|
44
|
+
-webkit-text-stroke: 1px var(--backdrop, transparent);
|
|
45
|
+
text-stroke: 1px var(--backdrop, transparent);
|
|
46
|
+
/* stylelint-enable */
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.Colors--all .Colors-button::after {
|
|
50
|
+
content: "Aa";
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.Colors--typo .Colors-button::after {
|
|
54
|
+
content: "AaBbCc";
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.Colors-prop,
|
|
58
|
+
.Colors-value {
|
|
59
|
+
flex: 1 0 100%;
|
|
60
|
+
margin: 10px 0 0;
|
|
61
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
.Fonts-item:not(:first-child) {
|
|
2
|
+
margin-top: 3em;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.Fonts-button {
|
|
6
|
+
color: inherit;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.Fonts-button::before {
|
|
10
|
+
content: "The quick brown fox jumps over the lazy dog";
|
|
11
|
+
font-family: var(--font-family);
|
|
12
|
+
font-feature-settings: var(--font-feature-settings);
|
|
13
|
+
font-kerning: var(--font-kerning);
|
|
14
|
+
font-size-adjust: var(--font-size-adjust);
|
|
15
|
+
font-size: var(--font-size);
|
|
16
|
+
font-stretch: var(--font-stretch);
|
|
17
|
+
font-style: var(--font-style);
|
|
18
|
+
font-variant: var(--font-variant);
|
|
19
|
+
font-variant-caps: var(--font-variant-caps);
|
|
20
|
+
font-weight: var(--font-weight);
|
|
21
|
+
letter-spacing: var(--letter-spacing);
|
|
22
|
+
line-height: var(--line-height);
|
|
23
|
+
text-shadow: var(--text-shadow);
|
|
24
|
+
text-transform: var(--text-transform);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.Fonts-details {
|
|
28
|
+
display: flex;
|
|
29
|
+
padding: 0;
|
|
30
|
+
list-style: none;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.Fonts-details > li:not(:last-child) {
|
|
34
|
+
margin-inline-end: 0.5em;
|
|
35
|
+
padding-inline-end: 0.5em;
|
|
36
|
+
border-inline-end: 0.0625rem solid currentcolor;
|
|
37
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
@import url("./colors.css");
|
|
2
|
+
@import url("./fonts.css");
|
|
3
|
+
@import url("./spacings.css");
|
|
4
|
+
|
|
5
|
+
.CustomPropsGroup {
|
|
6
|
+
list-style: none;
|
|
7
|
+
margin: 3em 0;
|
|
8
|
+
padding: 0;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.CustomProp {
|
|
12
|
+
position: relative;
|
|
13
|
+
border: 0.0625rem solid transparent;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.CustomProp[aria-selected="true"] {
|
|
17
|
+
position: relative;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.CustomProp-prop {
|
|
21
|
+
display: block;
|
|
22
|
+
margin: 10px 0 0;
|
|
23
|
+
word-break: break-all;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.CustomProp-button {
|
|
27
|
+
background: none;
|
|
28
|
+
border: none;
|
|
29
|
+
appearance: none;
|
|
30
|
+
font: inherit;
|
|
31
|
+
width: fit-content;
|
|
32
|
+
padding: 0;
|
|
33
|
+
text-align: start;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.CustomProp-button:focus {
|
|
37
|
+
outline: none;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.CustomProp-button:not([aria-expanded="true"]):hover .CustomProp-prop,
|
|
41
|
+
.CustomProp-button:not([aria-expanded="true"]):focus .CustomProp-prop {
|
|
42
|
+
text-decoration: underline;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.CustomProp-details {
|
|
46
|
+
position: absolute;
|
|
47
|
+
bottom: calc(100% + 15px);
|
|
48
|
+
inset-inline-start: 0;
|
|
49
|
+
padding: 15px;
|
|
50
|
+
margin: 0;
|
|
51
|
+
z-index: 1;
|
|
52
|
+
background: var(--color-Tooltip-background);
|
|
53
|
+
box-shadow: 0 4px 10px rgb(0 0 0 / 10%);
|
|
54
|
+
outline: 0.0625rem solid var(--color-Tooltip-outline);
|
|
55
|
+
box-sizing: border-box;
|
|
56
|
+
font-size: 14px;
|
|
57
|
+
display: none;
|
|
58
|
+
grid-template-columns: fit-content(50%) 1fr;
|
|
59
|
+
gap: 0.5rem 1rem;
|
|
60
|
+
line-height: 1.5;
|
|
61
|
+
white-space: nowrap;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
@keyframes fadeIn {
|
|
65
|
+
from {
|
|
66
|
+
opacity: 0;
|
|
67
|
+
transform: translateY(10px);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
to {
|
|
71
|
+
opacity: 1;
|
|
72
|
+
transform: translateY(0);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.CustomProp-details:not([hidden]),
|
|
77
|
+
.CustomProp-button:hover + .CustomProp-details {
|
|
78
|
+
display: grid;
|
|
79
|
+
animation: fadeIn 0.15s ease;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.CustomProp-details::before,
|
|
83
|
+
.CustomProp-details::after {
|
|
84
|
+
content: "";
|
|
85
|
+
display: block;
|
|
86
|
+
position: absolute;
|
|
87
|
+
inset-inline-start: 15px;
|
|
88
|
+
width: 0;
|
|
89
|
+
height: 0;
|
|
90
|
+
border: 10px solid transparent;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.CustomProp-details::before {
|
|
94
|
+
border-top-color: var(--color-Tooltip-outline);
|
|
95
|
+
top: 100%;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.CustomProp-details::after {
|
|
99
|
+
border-top-color: var(--color-Tooltip-background);
|
|
100
|
+
top: calc(100% - 2px);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.CustomProp-detailsProperty {
|
|
104
|
+
font-weight: 600;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.CustomProp-detailsValue {
|
|
108
|
+
margin: 0;
|
|
109
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
.Spacings {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
align-items: flex-start;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.Spacings-item:not(:first-child) {
|
|
8
|
+
margin-top: 3em;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.Spacings-button {
|
|
12
|
+
color: inherit;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.Spacings-button::before {
|
|
16
|
+
height: var(--spacing);
|
|
17
|
+
width: var(--spacing);
|
|
18
|
+
background: currentcolor;
|
|
19
|
+
content: "";
|
|
20
|
+
display: block;
|
|
21
|
+
}
|