@schalkneethling/miyagi-core 4.4.2 → 4.4.3
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/README.md +7 -2
- package/api/app.js +16 -16
- package/api/index.js +263 -262
- package/bin/miyagi.js +1 -1
- package/dist/css/iframe.css +6 -30
- package/frontend/assets/css/iframe/accordion-tabs.css +39 -39
- package/frontend/assets/css/iframe/jsontree.js.css +149 -149
- package/frontend/assets/css/iframe/prism.css +45 -45
- package/frontend/assets/css/iframe/styleguide/colors.css +27 -27
- package/frontend/assets/css/iframe/styleguide/fonts.css +23 -23
- package/frontend/assets/css/iframe/styleguide/index.css +58 -58
- package/frontend/assets/css/iframe/styleguide/spacings.css +10 -10
- package/frontend/assets/css/iframe.css +191 -191
- package/frontend/assets/css/main/menu/config-switcher.css +21 -21
- package/frontend/assets/css/main/menu/config-switchers.css +34 -34
- package/frontend/assets/css/main/menu/goto.css +16 -16
- package/frontend/assets/css/main/menu/nav.css +49 -49
- package/frontend/assets/css/main/menu/search.css +34 -34
- package/frontend/assets/css/main/menu/title.css +18 -18
- package/frontend/assets/css/main/menu.css +89 -89
- package/frontend/assets/css/main/reset.css +47 -47
- package/frontend/assets/css/main.css +41 -41
- package/frontend/assets/css/shared.css +16 -16
- package/frontend/assets/css/tokens.css +108 -107
- package/frontend/assets/js/_accordion-tabs.js +392 -392
- package/frontend/assets/js/_goto.js +59 -59
- package/frontend/assets/js/_iframe-links.js +14 -14
- package/frontend/assets/js/_is-triggered.js +3 -3
- package/frontend/assets/js/_main.js +369 -369
- package/frontend/assets/js/_mock-data.js +8 -8
- package/frontend/assets/js/_prism.js +1082 -1081
- package/frontend/assets/js/_search.js +186 -186
- package/frontend/assets/js/_socket.js +44 -44
- package/frontend/assets/js/config-switcher/development-mode.js +38 -38
- package/frontend/assets/js/config-switcher/index.js +55 -55
- package/frontend/assets/js/config-switcher/text-direction.js +22 -22
- package/frontend/assets/js/config-switcher/theme.js +68 -68
- package/frontend/assets/js/iframe.build.js +25 -25
- package/frontend/assets/js/iframe.js +38 -38
- package/frontend/assets/js/jsontree.js +979 -976
- package/frontend/assets/js/main.build.js +29 -29
- package/frontend/assets/js/main.js +31 -31
- package/frontend/assets/js/styleguide/color-converter.js +652 -652
- package/frontend/assets/js/styleguide/index.js +100 -100
- package/lib/build/index.js +1014 -1020
- package/lib/cli/app.js +16 -16
- package/lib/cli/component.js +50 -50
- package/lib/cli/doctor.js +130 -121
- package/lib/cli/drupal-assets.js +163 -157
- package/lib/cli/lint.js +196 -196
- package/lib/cli/run.js +150 -146
- package/lib/config.js +86 -86
- package/lib/constants/lint-log-levels.js +6 -6
- package/lib/drupal/load-assets-config.js +59 -60
- package/lib/drupal/resolve-library-assets.js +132 -141
- package/lib/errors.js +20 -20
- package/lib/generator/component.js +124 -124
- package/lib/generator/mocks.js +156 -156
- package/lib/helpers.js +68 -68
- package/lib/i18n/en.js +93 -93
- package/lib/i18n/index.js +8 -8
- package/lib/index.js +13 -13
- package/lib/init/args.js +153 -153
- package/lib/init/config.js +452 -438
- package/lib/init/engines.js +41 -41
- package/lib/init/index.js +83 -83
- package/lib/init/rendering.js +3 -3
- package/lib/init/static.js +90 -90
- package/lib/init/twing/cache.js +27 -27
- package/lib/init/twing/functions.js +37 -37
- package/lib/init/views.js +5 -5
- package/lib/logger.js +72 -72
- package/lib/mocks/get.js +88 -88
- package/lib/mocks/index.js +2 -2
- package/lib/mocks/resolve/ref.js +447 -447
- package/lib/mocks/resolve/tpl.js +218 -218
- package/lib/mocks/resolve.js +154 -154
- package/lib/render/helpers/resolve-assets.js +29 -39
- package/lib/render/helpers.js +27 -27
- package/lib/render/index.js +18 -18
- package/lib/render/views/iframe/component.docs.js +50 -50
- package/lib/render/views/iframe/component.js +249 -248
- package/lib/render/views/iframe/design-tokens/colors.js +38 -38
- package/lib/render/views/iframe/design-tokens/index.js +3 -3
- package/lib/render/views/iframe/design-tokens/sizes.js +35 -35
- package/lib/render/views/iframe/design-tokens/typography.js +37 -37
- package/lib/render/views/iframe/docs.js +42 -42
- package/lib/render/views/iframe/index.js +28 -28
- package/lib/render/views/iframe/variation.js +89 -89
- package/lib/render/views/iframe/variation.standalone.js +69 -68
- package/lib/render/views/main/component.docs.js +38 -38
- package/lib/render/views/main/component.js +55 -55
- package/lib/render/views/main/design-tokens.js +38 -38
- package/lib/render/views/main/docs.js +33 -33
- package/lib/render/views/main/index.js +33 -33
- package/lib/state/components.js +99 -99
- package/lib/state/css.js +33 -33
- package/lib/state/docs.js +72 -72
- package/lib/state/file-contents.js +154 -154
- package/lib/state/helpers.js +53 -53
- package/lib/state/index.js +39 -39
- package/lib/state/menu/index.js +202 -202
- package/lib/state/menu/structure.js +84 -84
- package/lib/state/partials.js +12 -12
- package/lib/state/source-tree.js +51 -51
- package/lib/styleguide/color-names.js +148 -148
- package/lib/styleguide/colors.js +113 -113
- package/lib/styleguide/helpers.js +33 -33
- package/lib/styleguide/index.js +4 -4
- package/lib/styleguide/media-queries.js +18 -18
- package/lib/styleguide/spacings.js +22 -22
- package/lib/styleguide/typography.js +46 -46
- package/lib/validator/mocks.js +110 -83
- package/lib/validator/schemas.js +236 -227
- package/package.json +118 -117
package/lib/init/args.js
CHANGED
|
@@ -14,161 +14,161 @@ import { EXIT_CODES, MiyagiError } from "../errors.js";
|
|
|
14
14
|
* @returns {object}
|
|
15
15
|
*/
|
|
16
16
|
export default function createCli(handlers, argv = process.argv) {
|
|
17
|
-
|
|
17
|
+
let result;
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
const commandHandler = (handler) => async (args) => {
|
|
20
|
+
result = await handler(args);
|
|
21
|
+
return result;
|
|
22
|
+
};
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
24
|
+
const cli = yargs(hideBin(argv))
|
|
25
|
+
.scriptName("miyagi")
|
|
26
|
+
.option("verbose", {
|
|
27
|
+
alias: "v",
|
|
28
|
+
description:
|
|
29
|
+
"Logging additional information — helpful mainly in case of errors.",
|
|
30
|
+
type: "boolean",
|
|
31
|
+
global: true,
|
|
32
|
+
})
|
|
33
|
+
.command(
|
|
34
|
+
"start",
|
|
35
|
+
"Starts the miyagi server",
|
|
36
|
+
(builder) =>
|
|
37
|
+
builder
|
|
38
|
+
.option("watch-report", {
|
|
39
|
+
description: "Enable watch report output on startup.",
|
|
40
|
+
type: "boolean",
|
|
41
|
+
})
|
|
42
|
+
.option("watch-report-format", {
|
|
43
|
+
description: "Set watch report format.",
|
|
44
|
+
type: "string",
|
|
45
|
+
choices: ["pretty", "summary", "json"],
|
|
46
|
+
})
|
|
47
|
+
.option("watch-report-no-color", {
|
|
48
|
+
description: "Disable colors in watch report output.",
|
|
49
|
+
type: "boolean",
|
|
50
|
+
}),
|
|
51
|
+
commandHandler(handlers.start),
|
|
52
|
+
)
|
|
53
|
+
.command(
|
|
54
|
+
"build",
|
|
55
|
+
"Creates a static build of all your components",
|
|
56
|
+
(builder) =>
|
|
57
|
+
builder.option("folder", {
|
|
58
|
+
description: "The folder where your static build files will be saved",
|
|
59
|
+
type: "string",
|
|
60
|
+
}),
|
|
61
|
+
commandHandler(handlers.build),
|
|
62
|
+
)
|
|
63
|
+
.command(
|
|
64
|
+
"new <component>",
|
|
65
|
+
"Creates a new component folder (including template, CSS, JS, documentation, mocks, and schema files)",
|
|
66
|
+
(builder) =>
|
|
67
|
+
builder
|
|
68
|
+
.positional("component", {
|
|
69
|
+
description: "The component path to create",
|
|
70
|
+
type: "string",
|
|
71
|
+
})
|
|
72
|
+
.option("skip", {
|
|
73
|
+
description:
|
|
74
|
+
"files that will not be created\n(space separated list of tpl, css, js, docs, mocks, schema)",
|
|
75
|
+
type: "array",
|
|
76
|
+
})
|
|
77
|
+
.option("only", {
|
|
78
|
+
description:
|
|
79
|
+
"tells miyagi to only created the passes file types\n(space separated list of tpl, css, js, docs, mocks, schema)",
|
|
80
|
+
type: "array",
|
|
81
|
+
}),
|
|
82
|
+
commandHandler(handlers.new),
|
|
83
|
+
)
|
|
84
|
+
.command(
|
|
85
|
+
"mocks <component>",
|
|
86
|
+
"Creates a mock data file with dummy content based on the schema file",
|
|
87
|
+
(builder) =>
|
|
88
|
+
builder.positional("component", {
|
|
89
|
+
description: "The component path to generate mock data for",
|
|
90
|
+
type: "string",
|
|
91
|
+
}),
|
|
92
|
+
commandHandler(handlers.mocks),
|
|
93
|
+
)
|
|
94
|
+
.command(
|
|
95
|
+
"lint [component]",
|
|
96
|
+
"Validates if the component's mock data matches its JSON schema",
|
|
97
|
+
(builder) =>
|
|
98
|
+
builder.positional("component", {
|
|
99
|
+
description: "Optional component path to lint",
|
|
100
|
+
type: "string",
|
|
101
|
+
}),
|
|
102
|
+
commandHandler(handlers.lint),
|
|
103
|
+
)
|
|
104
|
+
.command(
|
|
105
|
+
"drupal-assets",
|
|
106
|
+
"Resolves Drupal *.libraries.yml dependencies and updates component $assets in mock files",
|
|
107
|
+
(builder) =>
|
|
108
|
+
builder
|
|
109
|
+
.option("engine", {
|
|
110
|
+
alias: "e",
|
|
111
|
+
description: "Engine to use for asset resolution",
|
|
112
|
+
type: "string",
|
|
113
|
+
choices: ["drupal"],
|
|
114
|
+
default: "drupal",
|
|
115
|
+
})
|
|
116
|
+
.option("config", {
|
|
117
|
+
description: "Path to .miyagi-assets.js config file",
|
|
118
|
+
type: "string",
|
|
119
|
+
default: ".miyagi-assets.js",
|
|
120
|
+
})
|
|
121
|
+
.option("libraries", {
|
|
122
|
+
alias: "l",
|
|
123
|
+
description: "Path to *.libraries.yml (overrides config)",
|
|
124
|
+
type: "string",
|
|
125
|
+
})
|
|
126
|
+
.option("components", {
|
|
127
|
+
alias: "c",
|
|
128
|
+
description: "Library names to process (space-separated)",
|
|
129
|
+
type: "array",
|
|
130
|
+
})
|
|
131
|
+
.option("ignore-prefixes", {
|
|
132
|
+
description:
|
|
133
|
+
'Dependency prefixes to skip (e.g. "core" to ignore core/jquery)',
|
|
134
|
+
type: "array",
|
|
135
|
+
})
|
|
136
|
+
.option("dry-run", {
|
|
137
|
+
description: "Print resolved $assets without writing files",
|
|
138
|
+
type: "boolean",
|
|
139
|
+
default: false,
|
|
140
|
+
}),
|
|
141
|
+
commandHandler(handlers.drupalAssets),
|
|
142
|
+
)
|
|
143
|
+
.command(
|
|
144
|
+
"doctor",
|
|
145
|
+
"Checks your miyagi environment and config for common setup issues",
|
|
146
|
+
() => {},
|
|
147
|
+
commandHandler(handlers.doctor),
|
|
148
|
+
)
|
|
149
|
+
.help()
|
|
150
|
+
.version(pkgJson.version)
|
|
151
|
+
.alias("help", "h")
|
|
152
|
+
.strictCommands()
|
|
153
|
+
.demandCommand()
|
|
154
|
+
.exitProcess(false)
|
|
155
|
+
.fail((message, error) => {
|
|
156
|
+
if (error) {
|
|
157
|
+
throw error;
|
|
158
|
+
}
|
|
159
159
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
160
|
+
throw new MiyagiError(message || "CLI parsing failed.", {
|
|
161
|
+
code: EXIT_CODES.CLI_USAGE_ERROR,
|
|
162
|
+
});
|
|
163
|
+
})
|
|
164
|
+
.epilogue(
|
|
165
|
+
"Please check https://docs.miyagi.dev/configuration/options/ for all options",
|
|
166
|
+
);
|
|
167
167
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
168
|
+
return {
|
|
169
|
+
cli,
|
|
170
|
+
getResult() {
|
|
171
|
+
return result;
|
|
172
|
+
},
|
|
173
|
+
};
|
|
174
174
|
}
|