diff --git a/.babelrc.js b/.babelrc.js
index 682bd47df..d0eac152e 100644
--- a/.babelrc.js
+++ b/.babelrc.js
@@ -30,13 +30,13 @@ module.exports = {
legacy: true,
},
],
+ ['@babel/plugin-proposal-private-property-in-object', { loose: true }],
['@babel/plugin-proposal-private-methods', { loose: true }],
['@babel/plugin-proposal-class-properties', { loose: true }],
'@babel/plugin-proposal-export-default-from',
'@babel/plugin-syntax-dynamic-import',
['@babel/plugin-proposal-object-rest-spread', { loose: true, useBuiltIns: true }],
'babel-plugin-macros',
- ['emotion', { sourceMap: true, autoLabel: true }],
],
env: {
test: withTests,
@@ -61,7 +61,7 @@ module.exports = {
'@babel/plugin-syntax-dynamic-import',
['@babel/plugin-proposal-class-properties', { loose: true }],
'babel-plugin-macros',
- ['emotion', { sourceMap: true, autoLabel: true }],
+ ['@emotion', { sourceMap: true, autoLabel: true }],
'@babel/plugin-transform-react-constant-elements',
'babel-plugin-add-react-displayname',
],
@@ -91,7 +91,7 @@ module.exports = {
],
],
plugins: [
- 'emotion',
+ '@emotion',
'babel-plugin-macros',
'@babel/plugin-transform-arrow-functions',
'@babel/plugin-transform-shorthand-properties',
diff --git a/.circleci/config.yml b/.circleci/config.yml
index 41a3c722c..94751913c 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -5,7 +5,7 @@ aliases:
working_directory: /tmp/storybook
CYPRESS_CACHE_FOLDER:
docker:
- - image: circleci/node:14-browsers
+ - image: cimg/python:3.10.6-browsers
jobs:
install:
@@ -154,7 +154,7 @@ jobs:
e2e:
working_directory: /tmp/storybook
docker:
- - image: cypress/included:4.7.0
+ - image: cypress/included:4.12.0
environment:
TERM: xterm
steps:
@@ -313,4 +313,4 @@ workflows:
- install
- docs:
requires:
- - build
\ No newline at end of file
+ - build
diff --git a/README.md b/README.md
index 260f10989..e7b44962d 100644
--- a/README.md
+++ b/README.md
@@ -2,39 +2,6 @@
-## Tailwind Jit and Postcss 8
-In Version`Wingsuit V1 PostCss8 and Jit compiler becomes default.
-
-To upgrade your existing project:
-
-Step 1:
-```
-yarn add -D @storybook/addon-postcss
-yarn add -D @wingsuit-designsystem/preset-postcss8
-yarn add @tailwindcss/jit
-
-# Replace
-"tailwindcss": "npm:@tailwindcss/postcss7-compat"
-with:
-"tailwindcss": "^2.0.4"
-
-```
-Step 2:
-* Add `@wingsuit-designsystem/preset-postcss8` to your `wingsuit.config.js`
-* Follow PostCss instructions from https://storybook.js.org/addons/@storybook/addon-postcss
-
-Step 3:
-
-Adjust your postcss config. See https://github.com/wingsuit-designsystem/wingsuit/blob/master/starter-kits/tailwind/postcss.config.js
-## Upgrade from BETA.41 to rc.1
-
-Breaking changes:
-* From knobs to controls:
-Replace `@storybook/addon-knobs` to `@storybook/addon-controls` in your apps/storybook/main.js
-* Twig functions `pattern_preview` and `pattern` are now compatible with UI Patterns functions
-The arguments order changed from `pattern, variant, variables` to `pattern, variable, variant`.
-So search for all `pattern_preview` and `pattern` methods and reorder the variables.
-
# Build bulletproof TWIG Components in Storybook
1. Describe, develop and test your Pattern in storybook with [twing](https://www.npmjs.com/package/twing).
diff --git a/docs/apps/pages/pages/docs.twig b/docs/apps/pages/pages/docs.twig
index b5bbcc809..0337bddc0 100644
--- a/docs/apps/pages/pages/docs.twig
+++ b/docs/apps/pages/pages/docs.twig
@@ -9,9 +9,25 @@
{% set body %}
{{ pattern('rich_text', {text: content}, 'default') }}
+ {% if next|length > 0 %}
+
+
NEXT
+ {% for item in next %}
+ {{ pattern('next', {
+ title: item.title,
+ text: item.text,
+ button: pattern('button',{
+ text: item.link_title,
+ round: true,
+ size: 'medium',
+ url: item.href,
+ }, 'default')
+ }) }}
+ {% endfor %}
+
+ {% endif %}
{% endset %}
-
{% include "@templates/site-container.twig" with {
menu: pattern_preview('menu', {}, 'primary'),
top_menu: pattern_preview('menu', {}, 'top'),
diff --git a/docs/apps/pages/pages/guides/showroom-guide/index.mdx b/docs/apps/pages/pages/guides/showroom-guide/index.mdx
new file mode 100644
index 000000000..be5b2828d
--- /dev/null
+++ b/docs/apps/pages/pages/guides/showroom-guide/index.mdx
@@ -0,0 +1,64 @@
+# Showroom
+Storybook patterns overwhelm most customer. To provide only the patterns the customer needs Wingsuit (>=1.2)
+adds a showroom feature.
+
+To configure the structure of Wingsuit adds a alterStory and alterPattern hook. Open `apps/storybook/preview.js`:
+
+Here a sample for a Drupal Layout Builder centric project.
+```js
+configure(
+ module,
+ [
+ require.context('./patterns', true, /\.stories(\.jsx|\.js|\.mdx)$/),
+ require.context('wspatterns', true, /\.stories(\.jsx|\.js|\.mdx)$/),
+ ],
+ require.context('./config', false, /\.json|\.ya?ml$/),
+ require.context('wspatterns', true, /\.twig$/),
+ namespaces,
+ renderImpl,
+ {
+ alterStory: (story) => {
+ if (process.env.STORYBOOK_DOCS === 'true') {
+ const docsStories = {
+ Welcome: 'Welcome',
+ };
+ if (docsStories[story.title]) {
+ return { ...story, ...{ title: docsStories[story.title] } };
+ }
+ return null;
+ }
+ return story;
+ },
+ alterPattern: (pattern) => {
+ if (process.env.STORYBOOK_DOCS === 'true') {
+ const docsPages = {
+ section: 'Section',
+ section_slider: 'Section',
+ hero: 'Blocks',
+ card: 'Blocks',
+ rich_text: 'Blocks',
+ button_group: 'Blocks',
+ avatar: 'Blocks',
+ };
+ if (docsPages[pattern.getId()]) {
+ pattern.setNamespace(docsPages[pattern.getId()]);
+ return pattern;
+ }
+ return null;
+ }
+ return pattern;
+ },
+ }
+```
+
+## Start storybook in showroom mode
+
+Run either
+```
+yarn ws build --docs
+```
+or execute
+```
+yarn ws dev --docs
+```
+to start storybook in dev mode.
diff --git a/docs/apps/pages/pages/guides/showroom-guide/showroom-guide.pages.jsx b/docs/apps/pages/pages/guides/showroom-guide/showroom-guide.pages.jsx
new file mode 100644
index 000000000..edccebada
--- /dev/null
+++ b/docs/apps/pages/pages/guides/showroom-guide/showroom-guide.pages.jsx
@@ -0,0 +1,23 @@
+import 'protons';
+import MDX from './index.mdx';
+
+const template = require('../../docs.twig');
+
+export default {
+ path: '/guides/showroom',
+ template,
+ MDX,
+ vars: {
+ meta_title: 'Showroom',
+ meta_description: 'Display storybook components for your customer.',
+
+ next: [
+ {
+ title: 'Configure your app?',
+ text: 'Check the parameters under the "App details" section and extend your wingsuit.config.js',
+ link_title: 'Details',
+ href: '/configurations/details',
+ },
+ ],
+ },
+};
diff --git a/docs/apps/pages/pages/guides/twing-extensions-guide/index.mdx b/docs/apps/pages/pages/guides/twing-extensions-guide/index.mdx
new file mode 100644
index 000000000..7373dce3f
--- /dev/null
+++ b/docs/apps/pages/pages/guides/twing-extensions-guide/index.mdx
@@ -0,0 +1,26 @@
+# Twing extensions
+You can add your own twing extensions to wingsuit.
+
+Here a sample to add a new function `apps/storybook/preview.js`:
+
+```js
+const renderImpl = new TwingRenderer();
+const twingEnvironment = renderImpl.getEnvironment();
+let function = new TwingFunction('function_name', function () {
+ // ...
+});
+twingEnvironment.addFunction(function);
+
+configure(
+ module,
+ [
+ require.context('./patterns', true, /\.stories(\.jsx|\.js|\.mdx)$/),
+ require.context('wspatterns', true, /\.stories(\.jsx|\.js|\.mdx)$/),
+ ],
+ require.context('./config', false, /\.json|\.ya?ml$/),
+ require.context('wspatterns', true, /\.twig$/),
+ namespaces,
+ renderImpl
+);
+```
+[Click here for more infos about twing extensions](https://nightlycommit.github.io/twing/advanced.html#context-aware-filters).
diff --git a/docs/apps/pages/pages/guides/twing-extensions-guide/index.yml b/docs/apps/pages/pages/guides/twing-extensions-guide/index.yml
new file mode 100644
index 000000000..fee29b9bf
--- /dev/null
+++ b/docs/apps/pages/pages/guides/twing-extensions-guide/index.yml
@@ -0,0 +1,11 @@
+extends:
+ - page
+fields:
+ content:
+ preview:
+ -
+ id: rich_text
+ variant: default
+ fields:
+ text: 'test'
+
diff --git a/docs/apps/pages/pages/guides/twing-extensions-guide/twing-extensions-guide.pages.jsx b/docs/apps/pages/pages/guides/twing-extensions-guide/twing-extensions-guide.pages.jsx
new file mode 100644
index 000000000..6a125061f
--- /dev/null
+++ b/docs/apps/pages/pages/guides/twing-extensions-guide/twing-extensions-guide.pages.jsx
@@ -0,0 +1,23 @@
+import 'protons';
+import MDX from './index.mdx';
+
+const template = require('../../docs.twig');
+
+export default {
+ path: '/guides/twing-extensions-guide',
+ template,
+ MDX,
+ vars: {
+ meta_title: 'Twing extensions',
+ meta_description: 'Add twing extensions.',
+
+ next: [
+ {
+ title: 'Configure your app?',
+ text: 'Check the parameters under the "App details" section and extend your wingsuit.config.js',
+ link_title: 'Details',
+ href: '/configurations/details',
+ },
+ ],
+ },
+};
diff --git a/docs/apps/pages/pages/releases/onedotone/index.mdx b/docs/apps/pages/pages/releases/onedotone/index.mdx
index afb6c35a5..ddd28a3cb 100644
--- a/docs/apps/pages/pages/releases/onedotone/index.mdx
+++ b/docs/apps/pages/pages/releases/onedotone/index.mdx
@@ -46,7 +46,6 @@ Thanks to [iuscare](https://github.com/iuscare) for these great presets.
## New App `Wingsuit Pages`
With this new App you can build static page with Wingsuit components and feed them with MDX files.
[Click here for more infos](/apps/pages/).
-** >> This docs page is build with Wingsuit Pages. << **
## Awesome Drupal Kickstarter
We rebuild the Drupal Kickstarter. We removed Acquia Lightning and build a Layout Builder interface which makes fun to work with.
diff --git a/docs/apps/pages/pages/releases/onedottwo/index.mdx b/docs/apps/pages/pages/releases/onedottwo/index.mdx
new file mode 100644
index 000000000..44c1aa2c7
--- /dev/null
+++ b/docs/apps/pages/pages/releases/onedottwo/index.mdx
@@ -0,0 +1,18 @@
+# What's new in Version 1.2
+We added a showroom feature and we updated the performance and starterkit templates.
+
+## Showroom
+Now you can run and build storybook in showroom mode
+The following example renders storybook in showroom.
+```sh
+yarn ws build --docs
+```
+```sh
+yarn ws dev --docs
+```
+[Click here for more infos](/guides/showroom/).
+## Performance
+Thanks to storybook 6.4 and a updated babel configuration storybook starts now in less than 15 seconds.
+
+## Updated placeholder component.
+Image styles are generated automatically.
diff --git a/docs/apps/pages/pages/releases/onedottwo/onedottwo.pages.jsx b/docs/apps/pages/pages/releases/onedottwo/onedottwo.pages.jsx
new file mode 100644
index 000000000..0c663a14a
--- /dev/null
+++ b/docs/apps/pages/pages/releases/onedottwo/onedottwo.pages.jsx
@@ -0,0 +1,22 @@
+import 'protons';
+import MDX from './index.mdx';
+
+const template = require('../../docs.twig');
+
+export default {
+ path: '/releases/onedottwo',
+ template,
+ MDX,
+ vars: {
+ meta_title: 'Wingsuit Version 1.2',
+ meta_description: 'We have added a lot of new features in Version 1.2.',
+ next: [
+ {
+ title: 'Did we catch your interest?',
+ text: 'Do the 10 minute quickstart guide!',
+ href: '/guides/quick-start-guide',
+ link_title: 'Quickstart',
+ },
+ ],
+ },
+};
diff --git a/docs/package.json b/docs/package.json
index 409fc007e..5b36c56fc 100644
--- a/docs/package.json
+++ b/docs/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/docs",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit documentation.",
"main": "",
"private": true,
@@ -49,18 +49,18 @@
"@types/react": "^16.9.35",
"@types/react-dom": "^16.9.8",
"@webpack-cli/serve": "^1.3.0",
- "@wingsuit-designsystem/cli": "1.2.0-alpha.3",
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
- "@wingsuit-designsystem/pattern": "1.2.0-alpha.3",
- "@wingsuit-designsystem/pattern-react": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-compression": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-imagemin": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-mdx": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-pages": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-postcss8": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-pwa": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-tailwind2": "1.2.0-alpha.3",
- "@wingsuit-designsystem/storybook": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/cli": "1.2.9",
+ "@wingsuit-designsystem/core": "1.2.9",
+ "@wingsuit-designsystem/pattern": "1.2.9",
+ "@wingsuit-designsystem/pattern-react": "1.2.9",
+ "@wingsuit-designsystem/preset-compression": "1.2.9",
+ "@wingsuit-designsystem/preset-imagemin": "1.2.9",
+ "@wingsuit-designsystem/preset-mdx": "1.2.9",
+ "@wingsuit-designsystem/preset-pages": "1.2.9",
+ "@wingsuit-designsystem/preset-postcss8": "1.2.9",
+ "@wingsuit-designsystem/preset-pwa": "1.2.9",
+ "@wingsuit-designsystem/preset-tailwind2": "1.2.9",
+ "@wingsuit-designsystem/storybook": "1.2.9",
"autoprefixer": "^9.7.4",
"browser-sync-webpack-plugin": "^2.3.0",
"core-js": "^3.4.1",
diff --git a/docs/source/default/patterns/02-molecules/menu/menu.wingsuit.yml b/docs/source/default/patterns/02-molecules/menu/menu.wingsuit.yml
index 13af5181c..4b347bd91 100644
--- a/docs/source/default/patterns/02-molecules/menu/menu.wingsuit.yml
+++ b/docs/source/default/patterns/02-molecules/menu/menu.wingsuit.yml
@@ -25,6 +25,10 @@ menu:
url: "/guides/create-component-guide"
- title: Create new app
url: "/guides/create-app-guide"
+ - title: Showroom
+ url: "/guides/showroom"
+ - title: Twing extensions
+ url: "/guides/twing-extensions-guide"
- title: CONFIGURATIONS
url: "#"
below:
@@ -106,8 +110,8 @@ menu:
items:
- title: Documentation
url: "/guides/quick-start-guide/"
- - title: What's new in Version 1.1
- url: "/releases/onedotone"
+ - title: What's new in Version 1.2
+ url: "/releases/onedottwo"
footer:
label: Footer
description: The footer menu.
diff --git a/docs/source/default/patterns/03-organisms/header/header.twig b/docs/source/default/patterns/03-organisms/header/header.twig
index 99209a26d..44037eeba 100644
--- a/docs/source/default/patterns/03-organisms/header/header.twig
+++ b/docs/source/default/patterns/03-organisms/header/header.twig
@@ -15,7 +15,7 @@
{% include "@atoms/logo/logo.twig" only %}
- v1.1
+ v1.2
{% if show_hamburger == true %}
diff --git a/examples/official-wingsuit/package.json b/examples/official-wingsuit/package.json
index a926b1014..be5857b2c 100644
--- a/examples/official-wingsuit/package.json
+++ b/examples/official-wingsuit/package.json
@@ -1,7 +1,7 @@
{
"name": "official-wingsuit",
"private": true,
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "A design system with Storybook, Tailwind and Drupal",
"main": "",
"license": "GPL-2.0",
@@ -34,10 +34,10 @@
"@storybook/linter-config": "^2.5.0",
"@storybook/react": "^6.1.0",
"@storybook/storybook-deployer": "^2.8.7",
- "@wingsuit-designsystem/cli": "1.2.0-alpha.3",
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
- "@wingsuit-designsystem/pattern": "1.2.0-alpha.3",
- "@wingsuit-designsystem/storybook": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/cli": "1.2.9",
+ "@wingsuit-designsystem/core": "1.2.9",
+ "@wingsuit-designsystem/pattern": "1.2.9",
+ "@wingsuit-designsystem/storybook": "1.2.9",
"autoprefixer": "^9.7.4",
"core-js": "^3.4.1",
"cross-env": "^6.0.3",
diff --git a/lerna-debug.log b/lerna-debug.log
index ec15191e2..fd5eb40a1 100644
--- a/lerna-debug.log
+++ b/lerna-debug.log
@@ -1,24 +1,15 @@
-0 silly argv {
-0 silly argv _: [ 'exec' ],
-0 silly argv scope: '@wingsuit-designsystem/*',
-0 silly argv parallel: true,
-0 silly argv args: [],
-0 silly argv '--': [
-0 silly argv 'cross-env-shell',
-0 silly argv 'node',
-0 silly argv '$LERNA_ROOT_PATH/scripts/watch-babel.js'
-0 silly argv ],
-0 silly argv lernaVersion: '3.22.1',
-0 silly argv '$0': 'node_modules/.bin/lerna'
-0 silly argv }
-1 notice cli v3.22.1
-2 verbose rootPath /home/cw/projects/wingsuit/wingsuit
-3 notice filter including "@wingsuit-designsystem/*"
-4 info filter [ '@wingsuit-designsystem/*' ]
-5 info Executing command in 17 packages: "cross-env-shell node $LERNA_ROOT_PATH/scripts/watch-babel.js"
-6 error Error: Command failed: cross-env-shell node $LERNA_ROOT_PATH/scripts/watch-babel.js
-6 error
-6 error Successfully compiled 4 files with Babel (1530ms).
-6 error
-6 error at makeError (/home/cw/projects/wingsuit/wingsuit/node_modules/execa/index.js:174:9)
-6 error at /home/cw/projects/wingsuit/wingsuit/node_modules/execa/index.js:278:16
+15 error Error: Command failed: git remote update
+15 error remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
+15 error remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
+15 error fatal: Authentifizierung fehlgeschlagen fΓΌr 'https://github.com/iuscare/wingsuit.git/'
+15 error error: Konnte nicht von pascal anfordern
+15 error
+15 error Fordere an von origin
+15 error Fordere an von pascal
+15 error
+15 error at makeError (/home/cw/projects/wingsuit/wingsuit/node_modules/execa/index.js:174:9)
+15 error at Function.module.exports.sync (/home/cw/projects/wingsuit/wingsuit/node_modules/execa/index.js:338:15)
+15 error at Object.execSync (/home/cw/projects/wingsuit/wingsuit/node_modules/@lerna/child-process/index.js:26:16)
+15 error at updateRemote (/home/cw/projects/wingsuit/wingsuit/node_modules/@lerna/version/lib/is-behind-upstream.js:26:16)
+15 error at isBehindUpstream (/home/cw/projects/wingsuit/wingsuit/node_modules/@lerna/version/lib/is-behind-upstream.js:11:3)
+15 error at VersionCommand.initialize (/home/cw/projects/wingsuit/wingsuit/node_modules/@lerna/version/index.js:154:9)
diff --git a/lerna.json b/lerna.json
index 2f8e2ccbe..50a8ddc62 100644
--- a/lerna.json
+++ b/lerna.json
@@ -7,7 +7,7 @@
"examples/*",
"starter-kits/*"
],
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"registry": "https://registry.npmjs.org",
"npmClient": "yarn"
}
diff --git a/package.json b/package.json
index 628056f5e..a1e8f7eae 100644
--- a/package.json
+++ b/package.json
@@ -66,10 +66,12 @@
"examples/*"
],
"optionalDependencies": {
- "@cypress/webpack-preprocessor": "^5.1.2",
- "cypress": "^4.7.0",
- "verdaccio": "^4.5.1",
- "verdaccio-auth-memory": "^9.4.0"
+ "verdaccio": "^5.5.2",
+ "@cypress/skip-test": "^2.6.1",
+ "@cypress/webpack-preprocessor": "^5.9.1",
+ "cypress": "8.7.0",
+ "ts-loader": "^8.0.14",
+ "verdaccio-auth-memory": "^9.7.2"
},
"devDependencies": {
"@babel/cli": "^7.8.4",
diff --git a/packages/cli/package.json b/packages/cli/package.json
index 58a602953..9397514d4 100644
--- a/packages/cli/package.json
+++ b/packages/cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/cli",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "The Wingsuit CLI",
"homepage": "https://github.com/wingsuit-designsystem/wingsuit",
"author": {
@@ -45,7 +45,7 @@
"dependencies": {
"@typescript-eslint/eslint-plugin": "^2.29.0",
"@typescript-eslint/parser": "^2.29.0",
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/core": "1.2.9",
"assign-deep": "^1.0.1",
"ast-query": "^2.0.0",
"babel-generator": "^6.26.1",
@@ -54,6 +54,7 @@
"babylon": "^6.18.0",
"chalk": "^2.1.0",
"commander": "^5.1.0",
+ "core-js": "^3.30.2",
"cross-spawn": "^7.0.3",
"eslint-plugin-react": "^7.15.1",
"git-clone": "^0.1.0",
@@ -67,7 +68,7 @@
"prettier": "^2.3.0",
"query-ast": "^1.0.3",
"rimraf": "^3.0.2",
- "typescript": "^3.4.0",
+ "typescript": "^4.5.4",
"yeoman-environment": "^3.4.0",
"yeoman-generator": "^5.2.0",
"yosay": "^2.0.1"
@@ -77,5 +78,5 @@
"url": "git@github.com:wingsuit-designsystem/wingsuit.git",
"directory": "packages/cli"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/packages/cli/src/generate.ts b/packages/cli/src/generate.ts
index b3acef6c0..fa1474b5a 100644
--- a/packages/cli/src/generate.ts
+++ b/packages/cli/src/generate.ts
@@ -43,12 +43,13 @@ program
program
.command('dev')
- .option('-D --docs', ' Build a documentation-only site using addon-docs')
+ .option('-D --docs', 'Build a documentation-only site using addon-docs')
.description('Start Wingsuit App in dev mode.')
.action((options) => startApp(options, 'development'));
program
.command('build')
- .option('-D --docs', ' Build a documentation-only site using addon-docs')
+ .option('-D --docs', 'Build a documentation-only site using addon-docs')
+ .option('-o --output-dir ', 'Directory where to store built files')
.description('Build Wingsuit App.')
.action((options) => startApp(options, 'production'));
diff --git a/packages/cli/src/initiate.ts b/packages/cli/src/initiate.ts
index 773a113fa..3de43e55b 100644
--- a/packages/cli/src/initiate.ts
+++ b/packages/cli/src/initiate.ts
@@ -29,7 +29,6 @@ export default function (options) {
};
const cmdOptions = { stdio: 'inherit', cwd: npmOptions.checkoutFolder };
const gitOptions = { cwd: npmOptions.gitFolder };
-
// Removes the \n from the stringified buffer
const extractHash = (buffer) => {
const arr = buffer.toString('utf8').split('\n');
@@ -72,7 +71,10 @@ export default function (options) {
*/
const setupWingsuit = () => {
// This function must complete before the subsequent installs can be ran.
+
+ logger.log(`${npmOptions.gitFolder}/starter-kits/${npmOptions.starterKit}`);
checkoutLatestTag();
+
mv(
`${npmOptions.gitFolder}/starter-kits/${npmOptions.starterKit}`,
npmOptions.targetFolder,
diff --git a/packages/cli/src/startApps.ts b/packages/cli/src/startApps.ts
index a75d1cb87..eefd06e8b 100644
--- a/packages/cli/src/startApps.ts
+++ b/packages/cli/src/startApps.ts
@@ -24,17 +24,19 @@ export default function (options, environment) {
};
const startApp = async () => {
const appName = await getAppName();
+ const { outputDir, docs } = options;
try {
const appConfig = resolveConfig(appName, environment);
- const console =
- options.docs === false
+ const consoleCommand =
+ (docs !== true
? appConfig.startup()
- : `export STORYBOOK_DOCS=true && ${appConfig.startup()} --docs`;
+ : `export STORYBOOK_DOCS=true && ${appConfig.startup()} --docs`) +
+ (outputDir && outputDir !== '' ? ` --output-dir ${outputDir}` : '');
version({});
logger.info('');
logger.info(`Starting Wingsuit app "${appName}"...`);
logger.info('');
- const command = spawn(console, [], { shell: true, stdio: 'inherit' });
+ const command = spawn(consoleCommand, [], { shell: true, stdio: 'inherit' });
command.on('close', (code) => {
logger.log(`${code}`);
});
diff --git a/packages/cli/test/run_tests.sh b/packages/cli/test/run_tests.sh
index 7b21382f6..db4676679 100755
--- a/packages/cli/test/run_tests.sh
+++ b/packages/cli/test/run_tests.sh
@@ -17,7 +17,7 @@ mkdir run
cd run
echo "Running ws in $(pwd)"
-yarn ws init --folder "$(pwd)/smoketest" --smoke-test
+yarn ws init -k bootstrap
yarn ws init --folder "$(pwd)/wingsuit" --skip-install
cd wingsuit
diff --git a/packages/core/__tests__/config.test.ts b/packages/core/__tests__/config.test.ts
index eed0b20a5..4a666a52b 100644
--- a/packages/core/__tests__/config.test.ts
+++ b/packages/core/__tests__/config.test.ts
@@ -63,9 +63,9 @@ const config_3 = {
describe('#Test storybook config', () => {
test.each([
- [config_1, 7],
- [config_2, 9],
- [config_3, 8],
+ [config_1, 6],
+ [config_2, 8],
+ [config_3, 7],
])('Check resolve config', (config: {}, presetsLength) => {
const appConfig = resolveConfig('storybook', 'development', {}, config);
expect(appConfig.environment).toBe('development');
diff --git a/packages/core/package.json b/packages/core/package.json
index 7b575d1e7..5c4204634 100644
--- a/packages/core/package.json
+++ b/packages/core/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/core",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit Core Design System.",
"repository": {
"type": "git",
@@ -26,16 +26,19 @@
},
"homepage": "https://github.com/wingsuit-designsystem/wingsuit/tools#readme",
"dependencies": {
+ "@emotion/babel-plugin": "^11.10.0",
"@types/jest": "^25.2.1",
"@types/node": "^13.13.0",
"@types/webpack": "^4.41.12",
- "@wingsuit-designsystem/pattern": "1.2.0-alpha.3",
- "@wingsuit-designsystem/storybook": "1.2.0-alpha.3",
- "autoprefixer": "^9.7.4",
+ "@wingsuit-designsystem/pattern": "1.2.9",
+ "@wingsuit-designsystem/storybook": "1.2.9",
+ "autoprefixer": "10.4.5",
"babel-core": "^7.0.0-bridge.0",
"babel-jest": "^24.9.0",
"babel-loader": "^8.0.6",
+ "babel-plugin-emotion": "7.3.1",
"copy-webpack-plugin": "^5.1.1",
+ "core-js": "^3.30.2",
"css-loader": "^3.4.0",
"drupal-attribute": "^1.0.2",
"external-svg-sprite-loader": "^5.0.1",
@@ -44,7 +47,6 @@
"glob": "^7.1.6",
"image-webpack-loader": "^6.0.0",
"jest": "^25.3.0",
- "json-diff": "^0.7.1",
"lodash": "^4.17.15",
"merge-deep": "^3.0.2",
"mini-css-extract-plugin": "^1.3.1",
@@ -52,7 +54,7 @@
"postcss": "^7.0.35",
"postcss-loader": "^4.2.0",
"postcss-nested": "^4.2.1",
- "postcss-preset-env": "^6.7.0",
+ "postcss-preset-env": "^7.4.3",
"postcss-replace": "^1.1.0",
"prettier": "^2.3.0",
"reflect-metadata": "^0.1.13",
@@ -79,5 +81,5 @@
"publishConfig": {
"access": "public"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts
index fae4278f1..abd889237 100644
--- a/packages/core/src/index.ts
+++ b/packages/core/src/index.ts
@@ -1,9 +1,13 @@
+import path from 'path';
+
import PresetManager from './server/PresetManager';
import AppConfig from './AppConfig';
import { getConfigBase, resolveConfig } from './resolveConfig';
+const fs = require('fs-extra');
+
export { default as AppConfig } from './AppConfig';
export { resolveConfig } from './resolveConfig';
@@ -12,7 +16,7 @@ export { default as PresetManager } from './server/PresetManager';
const presetManager = new PresetManager();
-export function getAppPack(appConfig: AppConfig, webpacks: [] = []) {
+export function getAppPack(appConfig: AppConfig, webpacks: any[] = []) {
const pack = presetManager.generateWebpack(appConfig, webpacks);
return pack;
}
@@ -84,3 +88,31 @@ export function getAppNames(wingsuitConfig: any = null, type = '') {
});
return names;
}
+
+// Check for recursion
+const syncIsRunning = {};
+export function syncSilo(filename, data) {
+ if (syncIsRunning[filename]) {
+ return;
+ }
+ syncIsRunning[filename] = true;
+ const output = JSON.stringify(data);
+ setTimeout(() => {
+ syncIsRunning[filename] = false;
+ }, 2000);
+
+ fs.readFile(filename, (readerr, buffer) => {
+ // Only write output if there is a difference or non-existent target file
+ const existingJson = buffer ? buffer.toString() : '';
+ if (readerr || output !== existingJson) {
+ const dir = path.dirname(filename);
+ if (!fs.existsSync(dir)) {
+ fs.mkdirSync(dir, { recursive: true });
+ }
+
+ fs.writeFile(filename, output, (writeerr) => {
+ if (writeerr) console.error(writeerr);
+ });
+ }
+ });
+}
diff --git a/packages/core/src/server/PresetManager.ts b/packages/core/src/server/PresetManager.ts
index ef901d0f8..285fdcd7c 100644
--- a/packages/core/src/server/PresetManager.ts
+++ b/packages/core/src/server/PresetManager.ts
@@ -18,7 +18,7 @@ const twing = require('./presets/twing');
const svg = require('./presets/svg');
const assetsVideos = require('./presets/assetsVideos');
-const defaultPresets: {} = {
+const defaultPresets = {
css,
babel,
assets,
@@ -122,7 +122,7 @@ export default class PresetManager {
*
* @returns {*} - Fully merged and customized webpack config
*/
- public generateWebpack(appConfig: AppConfig, webpackConfigs: [] = []) {
+ public generateWebpack(appConfig: AppConfig, webpackConfigs: any[] = []) {
this.environment = appConfig.environment ? appConfig.environment : 'development';
const presets = this.getPresetDefinitions(appConfig);
diff --git a/packages/core/src/server/plugins/Svg2JsonPlugin.ts b/packages/core/src/server/plugins/Svg2JsonPlugin.ts
index f2a996642..622d1a06b 100644
--- a/packages/core/src/server/plugins/Svg2JsonPlugin.ts
+++ b/packages/core/src/server/plugins/Svg2JsonPlugin.ts
@@ -1,9 +1,7 @@
import { glob } from 'glob';
-import { AppConfig } from '../../index';
+import { AppConfig, syncSilo } from '../../index';
-const fs = require('fs-extra');
const path = require('path');
-const jsondiff = require('json-diff');
export default class Svg2JsonPlugin {
private readonly sourceFolder: string;
@@ -32,18 +30,8 @@ export default class Svg2JsonPlugin {
files.forEach((file) => {
svgs.push(path.basename(file, '.svg'));
});
- const output = { svgs };
- // Plugins are null after restoring from file system.
- // Infinite loop.
- fs.readJson(filename, (readerr, existingJson) => {
- if (readerr) console.error(readerr, `Creating ${path.basename(filename)}!`);
- // Only write output if there is a difference or non-existent target file
- if (jsondiff.diff(existingJson, output) !== undefined) {
- fs.outputJson(filename, output, (writeerr) => {
- if (writeerr) console.error(writeerr);
- });
- }
- });
+ const data = { svgs };
+ syncSilo(filename, data);
callback(null);
};
diff --git a/packages/core/src/stubs/defaultWingsuitConfig.stub.ts b/packages/core/src/stubs/defaultWingsuitConfig.stub.ts
index acf3aae79..458c0dae8 100644
--- a/packages/core/src/stubs/defaultWingsuitConfig.stub.ts
+++ b/packages/core/src/stubs/defaultWingsuitConfig.stub.ts
@@ -53,6 +53,9 @@ export const wingsuit: Config = {
presenter: 'Presentation template',
},
startup() {
+ if (this.environment === 'production') {
+ return `build-storybook --config-dir ${this.absAppPath}`
+ }
return `start-storybook --config-dir ${this.absAppPath}`
},
},
diff --git a/packages/pattern-react/package.json b/packages/pattern-react/package.json
index 64619976d..c09c45f0c 100644
--- a/packages/pattern-react/package.json
+++ b/packages/pattern-react/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/pattern-react",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit Pattern for React.",
"repository": {
"type": "git",
@@ -32,7 +32,7 @@
"dependencies": {
"@types/react": "^16.9.35",
"@types/react-dom": "^16.9.8",
- "@wingsuit-designsystem/pattern": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/pattern": "1.2.9",
"polished": "^4.0.5",
"prop-types": "^15.7.2",
"react": "^16.13.1"
@@ -40,5 +40,5 @@
"scripts": {
"prepare": "node ../../scripts/prepare.js"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/packages/pattern/__tests__/TwigAttribute.test.ts b/packages/pattern/__tests__/TwigAttribute.test.ts
index 77454ff4e..2d8bb98ef 100644
--- a/packages/pattern/__tests__/TwigAttribute.test.ts
+++ b/packages/pattern/__tests__/TwigAttribute.test.ts
@@ -9,6 +9,10 @@ describe('TwigAttribute test', () => {
twigAttribute = new TwigAttribute('class="class1 class2" data="test"');
expect(twigAttribute.toString()).toBe(' class="class1 class2" data="test"');
});
+ test('fromMap.', () => {
+ twigAttribute = new TwigAttribute(new Map().set('class', 'class1 class2').set('data', 'test'));
+ expect(twigAttribute.toString()).toBe(' class="class1 class2" data="test"');
+ });
test('addClass.', () => {
twigAttribute.addClass(['class1', 'class2']);
twigAttribute.addClass('class1 class2');
diff --git a/packages/pattern/package.json b/packages/pattern/package.json
index 8faaa43c1..3cbe8504c 100644
--- a/packages/pattern/package.json
+++ b/packages/pattern/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/pattern",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit Patterns.",
"repository": {
"type": "git",
@@ -40,5 +40,5 @@
"twing": "^5.0.1",
"twing-drupal-filters": "^0.0.2"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/packages/pattern/src/TwigAttribute.ts b/packages/pattern/src/TwigAttribute.ts
index 14b79876c..84f669634 100644
--- a/packages/pattern/src/TwigAttribute.ts
+++ b/packages/pattern/src/TwigAttribute.ts
@@ -6,9 +6,9 @@ const escapeHtml = require('escape-html');
export default class TwigAttribute {
private attributes: Map;
- constructor(attributes = '') {
- this.attributes = new Map();
- if (attributes !== '') {
+ constructor(attributes: string | any = '') {
+ this.attributes = attributes instanceof Map ? attributes : new Map();
+ if (!(attributes instanceof Map) && attributes !== '') {
const attrs = htmlAttributeParser(``).attributes;
Object.keys(attrs).forEach((key) => {
if (key === 'class') {
diff --git a/packages/pattern/src/TwingRenderer.ts b/packages/pattern/src/TwingRenderer.ts
index 9b8e40620..83e941351 100644
--- a/packages/pattern/src/TwingRenderer.ts
+++ b/packages/pattern/src/TwingRenderer.ts
@@ -62,7 +62,7 @@ export class TwingRenderer implements IRenderer {
constructor() {
const loader = new TwingLoaderArray(storage.getTwigResources());
- this.environment = new TwingEnvironment(loader, { autoescape: false, debug: false });
+ this.environment = new TwingEnvironment(loader, { autoescape: false, debug: true });
}
private initialize() {
diff --git a/packages/storybook/package.json b/packages/storybook/package.json
index fe96fdbaa..9a52b61bd 100644
--- a/packages/storybook/package.json
+++ b/packages/storybook/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/storybook",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit Storybook Integration.",
"repository": {
"type": "git",
@@ -39,8 +39,8 @@
"@storybook/theming": "^6.4.0",
"@types/react": "^16.9.35",
"@types/react-dom": "^16.9.8",
- "@wingsuit-designsystem/pattern": "1.2.0-alpha.3",
- "@wingsuit-designsystem/pattern-react": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/pattern": "1.2.9",
+ "@wingsuit-designsystem/pattern-react": "1.2.9",
"polished": "^4.0.5",
"prop-types": "^15.7.2",
"react": "^16.13.1",
@@ -50,5 +50,5 @@
"scripts": {
"prepare": "node ../../scripts/prepare.js"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/packages/storybook/src/index.tsx b/packages/storybook/src/index.tsx
index c7d2266ec..d40c61366 100644
--- a/packages/storybook/src/index.tsx
+++ b/packages/storybook/src/index.tsx
@@ -1,7 +1,14 @@
import React from 'react';
import { storage, renderer, Pattern, IRenderer } from '@wingsuit-designsystem/pattern';
import { configure as storybookConfigure, storiesOf } from '@storybook/react';
-import { Title, Subtitle, DocsStory, ArgsTable, CURRENT_SELECTION } from '@storybook/addon-docs';
+import {
+ Title,
+ Subtitle,
+ DocsStory,
+ Stories,
+ ArgsTable,
+ CURRENT_SELECTION,
+} from '@storybook/addon-docs';
import TwigAttribute from '@wingsuit-designsystem/pattern/dist/TwigAttribute';
import '@storybook/addon-docs/register';
import twig from 'react-syntax-highlighter/dist/cjs/languages/prism/markup';
@@ -19,13 +26,8 @@ export interface PatternEvents {
}
function getStorybookControlsOptions(setting) {
const options: {} = setting.getOptions();
- let controls = {};
+ const controls = {};
- if (setting.isRequired() === false) {
- controls = {
- '': 'Empty',
- };
- }
Object.keys(options).forEach((key) => {
controls[key] = options[key];
});
@@ -118,7 +120,6 @@ function getArgs(defaultArgs, variant) {
}
function getArgTypes(variant) {
const argTypes: any = {};
- let hasSettings = false;
Object.keys(variant.getSettings()).forEach((key) => {
const setting = variant.getSetting(key);
@@ -128,7 +129,6 @@ function getArgTypes(variant) {
setting.getType() !== 'group' &&
setting.getType() !== 'media_library'
) {
- hasSettings = true;
argTypes[key] = {
name: key,
type: {
@@ -176,24 +176,10 @@ function getArgTypes(variant) {
}
}
});
- if (!hasSettings) {
- delete argTypes.SETTINGS;
- } else {
- argTypes.SEP = {
- type: 'string',
- name: '',
- table: {
- defaultValue: { summary: null },
- },
- control: null,
- };
- }
- let hasFields = false;
Object.keys(variant.getFields()).forEach((key) => {
const field = variant.getField(key);
if (field.isEnable()) {
- hasFields = true;
argTypes[key] = {
name: key,
table: {
@@ -226,10 +212,6 @@ function getArgTypes(variant) {
}
}
});
- if (hasFields) {
- delete argTypes.FIELDS;
- delete argTypes.SEP;
- }
return argTypes;
}
@@ -241,6 +223,7 @@ function getStories(pattern: Pattern, module) {
const variant = pattern.getVariant(variantKey);
const argTypes = getArgTypes(variant);
const twigFile = storage.findTwigById(variant.getPattern().getId());
+ const stories = process.env.STORYBOOK_DOCS === 'true' ? : null;
let parameters = {
argTypes,
docs: {
@@ -256,6 +239,7 @@ function getStories(pattern: Pattern, module) {
+ {stories}
>
),
diff --git a/presets/compression/package.json b/presets/compression/package.json
index 0b8ae5301..ff959476b 100644
--- a/presets/compression/package.json
+++ b/presets/compression/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/preset-compression",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit Compression preset.",
"repository": {
"type": "git",
@@ -28,7 +28,7 @@
"homepage": "https://github.com/wingsuit-designsystem/wingsuit/tools#readme",
"dependencies": {
"@gfx/zopfli": "^1.0.15",
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/core": "1.2.9",
"compression-webpack-plugin": "^6.1.1",
"zlib": "^1.0.5"
},
@@ -38,5 +38,5 @@
"publishConfig": {
"access": "public"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/presets/examples/pages/package.json b/presets/examples/pages/package.json
index a4e9f9957..00fc8cee5 100644
--- a/presets/examples/pages/package.json
+++ b/presets/examples/pages/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/examples-pages",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "A design system with Storybook, Tailwind and Drupal",
"main": "",
"private": true,
@@ -36,13 +36,13 @@
"@tailwindcss/jit": "^0.1.18",
"@types/react": "^16.9.35",
"@types/react-dom": "^16.9.8",
- "@wingsuit-designsystem/cli": "1.2.0-alpha.3",
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
- "@wingsuit-designsystem/pattern": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-pages": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-postcss8": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-tailwind2": "1.2.0-alpha.3",
- "@wingsuit-designsystem/storybook": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/cli": "1.2.9",
+ "@wingsuit-designsystem/core": "1.2.9",
+ "@wingsuit-designsystem/pattern": "1.2.9",
+ "@wingsuit-designsystem/preset-pages": "1.2.9",
+ "@wingsuit-designsystem/preset-postcss8": "1.2.9",
+ "@wingsuit-designsystem/preset-tailwind2": "1.2.9",
+ "@wingsuit-designsystem/storybook": "1.2.9",
"autoprefixer": "^9.7.4",
"core-js": "^3.4.1",
"cross-env": "^6.0.3",
diff --git a/presets/imagemin/package.json b/presets/imagemin/package.json
index ebd9655cd..996db1459 100644
--- a/presets/imagemin/package.json
+++ b/presets/imagemin/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/preset-imagemin",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit image optimization preset.",
"repository": {
"type": "git",
@@ -41,5 +41,5 @@
"publishConfig": {
"access": "public"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/presets/mdx/package.json b/presets/mdx/package.json
index 1c264ee81..6694d4de5 100644
--- a/presets/mdx/package.json
+++ b/presets/mdx/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/preset-mdx",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit Mdx support.",
"repository": {
"type": "git",
@@ -28,7 +28,7 @@
"homepage": "https://github.com/wingsuit-designsystem/wingsuit/tools#readme",
"dependencies": {
"@mdx-js/loader": "^1.6.22",
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/core": "1.2.9",
"remark-prism": "^1.3.6"
},
"scripts": {
@@ -37,5 +37,5 @@
"publishConfig": {
"access": "public"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/presets/pages/package.json b/presets/pages/package.json
index 388dd7a49..ed08f4047 100644
--- a/presets/pages/package.json
+++ b/presets/pages/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/preset-pages",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit Pages.",
"repository": {
"type": "git",
@@ -32,11 +32,11 @@
"publishConfig": {
"access": "public"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc",
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58",
"dependencies": {
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
- "@wingsuit-designsystem/pattern": "1.2.0-alpha.3",
- "@wingsuit-designsystem/pattern-react": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/core": "1.2.9",
+ "@wingsuit-designsystem/pattern": "1.2.9",
+ "@wingsuit-designsystem/pattern-react": "1.2.9",
"browser-sync": "^2.26.14",
"browser-sync-webpack-plugin": "^2.3.0",
"js-yaml": "^4.0.0",
diff --git a/presets/postcss8/package.json b/presets/postcss8/package.json
index 68161331c..dad1273dd 100644
--- a/presets/postcss8/package.json
+++ b/presets/postcss8/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/preset-postcss8",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit PostCss 8 support.",
"repository": {
"type": "git",
@@ -35,5 +35,5 @@
"publishConfig": {
"access": "public"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/presets/pwa/package.json b/presets/pwa/package.json
index cae0a156e..f09f404e0 100644
--- a/presets/pwa/package.json
+++ b/presets/pwa/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/preset-pwa",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit automatically generated favicons and progressive webapp enhancements preset.",
"repository": {
"type": "git",
@@ -39,5 +39,5 @@
"publishConfig": {
"access": "public"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/presets/scss/package.json b/presets/scss/package.json
index 5de1724b7..e979577e6 100644
--- a/presets/scss/package.json
+++ b/presets/scss/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/preset-scss",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit SCSS preset.",
"repository": {
"type": "git",
@@ -27,13 +27,13 @@
},
"homepage": "https://github.com/wingsuit-designsystem/wingsuit/tools#readme",
"dependencies": {
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/core": "1.2.9",
"glob": "^7.1.6",
"mini-css-extract-plugin": "^1.3.1",
- "node-sass": "^5.0.0",
"optimize-css-assets-webpack-plugin": "^5.0.3",
- "postcss-loader": "^4.2.0",
+ "postcss-loader": "^4.3.0",
"resolve-url-loader": "^3.1.1",
+ "sass": "^1.50.0",
"sass-loader": "^10.1.0",
"style-loader": "^1.0.2"
},
@@ -43,5 +43,5 @@
"publishConfig": {
"access": "public"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/presets/tailwind/package.json b/presets/tailwind/package.json
index 2e52761d0..92bd66859 100644
--- a/presets/tailwind/package.json
+++ b/presets/tailwind/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/preset-tailwind",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit TailwindCSS preset.",
"repository": {
"type": "git",
@@ -27,9 +27,8 @@
},
"homepage": "https://github.com/wingsuit-designsystem/wingsuit/tools#readme",
"dependencies": {
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/core": "1.2.9",
"fs-extra": "^9.0.0",
- "json-diff": "^0.7.1",
"tailwindcss": "^1.4.6"
},
"scripts": {
@@ -38,5 +37,5 @@
"publishConfig": {
"access": "public"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/presets/tailwind/src/plugins/Tailwind2JsonPlugin.ts b/presets/tailwind/src/plugins/Tailwind2JsonPlugin.ts
index 63ab6f5e3..1c532dabe 100644
--- a/presets/tailwind/src/plugins/Tailwind2JsonPlugin.ts
+++ b/presets/tailwind/src/plugins/Tailwind2JsonPlugin.ts
@@ -1,6 +1,5 @@
-const fs = require('fs-extra');
-const path = require('path');
-const jsondiff = require('json-diff');
+import { syncSilo } from '@wingsuit-designsystem/core';
+
const resolveConfig = require('tailwindcss/resolveConfig');
export default class Tailwind2JsonPlugin {
@@ -21,18 +20,8 @@ export default class Tailwind2JsonPlugin {
// eslint-disable-next-line global-require,import/no-dynamic-require
const tailwindConfig = require(this.tailwindConfig);
const filename = this.targetFilePath;
- const output = { tailwind: { theme: resolveConfig(tailwindConfig).theme } };
- // Plugins are null after restoring from file system.
- // Infinite loop.
- fs.readJson(filename, (readerr, existingJson) => {
- if (readerr) console.error(readerr, `Creating ${path.basename(filename)}!`);
- // Only write output if there is a difference or non-existent target file
- if (jsondiff.diff(existingJson, output) !== undefined) {
- fs.outputJson(filename, output, (writeerr) => {
- if (writeerr) console.error(writeerr);
- });
- }
- });
+ const data = { tailwind: { theme: resolveConfig(tailwindConfig).theme } };
+ syncSilo(filename, data);
callback(null);
};
diff --git a/presets/tailwind2/package.json b/presets/tailwind2/package.json
index c231551b9..0bc359263 100644
--- a/presets/tailwind2/package.json
+++ b/presets/tailwind2/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/preset-tailwind2",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit TailwindCSS 2 preset.",
"repository": {
"type": "git",
@@ -27,9 +27,8 @@
},
"homepage": "https://github.com/wingsuit-designsystem/wingsuit/tools#readme",
"dependencies": {
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/core": "1.2.9",
"fs-extra": "^9.0.0",
- "json-diff": "^0.7.1",
"tailwindcss": "^2.0.1-compat"
},
"scripts": {
@@ -38,5 +37,5 @@
"publishConfig": {
"access": "public"
},
- "gitHead": "c8f79243b1d0a1dace0bf3b8edcd45f23271befc"
+ "gitHead": "b7c8ec4097ae5cf658338c2a6c9de411793c9a58"
}
diff --git a/presets/tailwind2/src/index.ts b/presets/tailwind2/src/index.ts
index 106013766..7c6b9e938 100644
--- a/presets/tailwind2/src/index.ts
+++ b/presets/tailwind2/src/index.ts
@@ -3,12 +3,15 @@ import { AppConfig } from '@wingsuit-designsystem/core';
import Tailwind2JsonPlugin from './plugins/Tailwind2JsonPlugin';
export function webpack(appConfig: AppConfig) {
- return {
- plugins: [
- new Tailwind2JsonPlugin(
- path.resolve(`${appConfig.absRootPath}/tailwind.config`),
- path.resolve(`${appConfig.absAppPath}/config/silo/tailwind.json`)
- ),
- ],
- };
+ if (appConfig.type === 'storybook') {
+ return {
+ plugins: [
+ new Tailwind2JsonPlugin(
+ path.resolve(`${appConfig.absRootPath}/tailwind.config`),
+ path.resolve(`${appConfig.absAppPath}/config/silo/tailwind.json`)
+ ),
+ ],
+ };
+ }
+ return {};
}
diff --git a/presets/tailwind2/src/plugins/Tailwind2JsonPlugin.ts b/presets/tailwind2/src/plugins/Tailwind2JsonPlugin.ts
index 63ab6f5e3..d232e4089 100644
--- a/presets/tailwind2/src/plugins/Tailwind2JsonPlugin.ts
+++ b/presets/tailwind2/src/plugins/Tailwind2JsonPlugin.ts
@@ -1,6 +1,5 @@
-const fs = require('fs-extra');
-const path = require('path');
-const jsondiff = require('json-diff');
+import { syncSilo } from '@wingsuit-designsystem/core';
+
const resolveConfig = require('tailwindcss/resolveConfig');
export default class Tailwind2JsonPlugin {
@@ -20,19 +19,9 @@ export default class Tailwind2JsonPlugin {
const beforeCompile = (compilation, callback) => {
// eslint-disable-next-line global-require,import/no-dynamic-require
const tailwindConfig = require(this.tailwindConfig);
+ const data = { tailwind: { theme: resolveConfig(tailwindConfig).theme } };
const filename = this.targetFilePath;
- const output = { tailwind: { theme: resolveConfig(tailwindConfig).theme } };
- // Plugins are null after restoring from file system.
- // Infinite loop.
- fs.readJson(filename, (readerr, existingJson) => {
- if (readerr) console.error(readerr, `Creating ${path.basename(filename)}!`);
- // Only write output if there is a difference or non-existent target file
- if (jsondiff.diff(existingJson, output) !== undefined) {
- fs.outputJson(filename, output, (writeerr) => {
- if (writeerr) console.error(writeerr);
- });
- }
- });
+ syncSilo(filename, data);
callback(null);
};
diff --git a/scripts/run-e2e.ts b/scripts/run-e2e.ts
index 98490e0bc..ba20b0c61 100644
--- a/scripts/run-e2e.ts
+++ b/scripts/run-e2e.ts
@@ -240,6 +240,7 @@ const runE2E = (parameters: Parameters) =>
const { name, version } = parameters;
const cwd = path.join(siblingDir, `${name}-v${version}`);
+ // @ts-ignore
const { cleanup } = await prompt({
type: 'confirm',
name: 'cleanup',
diff --git a/scripts/run-registry.ts b/scripts/run-registry.ts
index 1666d6bbd..38d5afc5e 100755
--- a/scripts/run-registry.ts
+++ b/scripts/run-registry.ts
@@ -10,6 +10,8 @@ import nodeCleanup from 'node-cleanup';
import startVerdaccioServer from 'verdaccio';
import pLimit from 'p-limit';
+// @ts-ignore
+import { maxConcurrentTasks } from './utils/concurrency';
import { listOfPackages, Package } from './utils/list-packages';
program
@@ -29,7 +31,9 @@ const startVerdaccio = (port: number) => {
new Promise((resolve) => {
const cache = path.join(__dirname, '..', '.verdaccio-cache');
const config = {
- ...yaml.safeLoad(fs.readFileSync(path.join(__dirname, 'verdaccio.yaml'), 'utf8')),
+ ...(yaml.safeLoad(
+ fs.readFileSync(path.join(__dirname, 'verdaccio.yaml'), 'utf8')
+ ) as Record),
self_path: cache,
};
@@ -46,16 +50,17 @@ const startVerdaccio = (port: number) => {
setTimeout(() => {
if (!resolved) {
resolved = true;
- rej(new Error(`TIMEOUT - verdaccio didn't start within 60s`));
+ rej(new Error(`TIMEOUT - verdaccio didn't start within 10s`));
}
- }, 60000);
+ }, 10000);
}),
]);
};
-const registryUrl = (command: string, url?: string) =>
+
+const registryUrlNPM = (url?: string) =>
new Promise((res, rej) => {
const args = url ? ['config', 'set', 'registry', url] : ['config', 'get', 'registry'];
- exec(`${command} ${args.join(' ')}`, (e, stdout) => {
+ exec(`npm ${args.join(' ')}`, { cwd: path.join(process.cwd(), '..') }, (e, stdout) => {
if (e) {
rej(e);
} else {
@@ -64,8 +69,23 @@ const registryUrl = (command: string, url?: string) =>
});
});
+const registryUrlYarn = (url?: string) =>
+ new Promise((res, rej) => {
+ const args = url
+ ? ['config', 'set', 'npmRegistryServer', url]
+ : ['config', 'get', 'npmRegistryServer'];
+ exec(`yarn ${args.join(' ')}`, { cwd: path.join(__dirname, '..') }, (e, stdout) => {
+ if (e) {
+ console.log(stdout.toString());
+ rej(e);
+ } else {
+ res(url || stdout.toString().trim());
+ }
+ });
+ });
+
const registriesUrl = (yarnUrl?: string, npmUrl?: string) =>
- Promise.all([registryUrl('yarn', yarnUrl), registryUrl('npm', npmUrl || yarnUrl)]);
+ Promise.all([registryUrlYarn(yarnUrl), registryUrlNPM(npmUrl || yarnUrl)]);
const applyRegistriesUrl = (
yarnUrl: string,
@@ -87,40 +107,36 @@ const applyRegistriesUrl = (
return registriesUrl(yarnUrl, npmUrl);
};
-const addUser = (url: string) =>
- new Promise((res, rej) => {
- logger.log(`π€ add temp user to verdaccio`);
-
- exec(`npx npm-cli-adduser -r "${url}" -a -u user -p password -e user@example.com`, (e) => {
- if (e) {
- rej(e);
- } else {
- res();
- }
- });
- });
-
const currentVersion = async () => {
const { version } = (await import('../lerna.json')).default;
return version;
};
const publish = (packages: { name: string; location: string }[], url: string) => {
- const limit = pLimit(3);
+ logger.log(`Publishing packages with a concurrency of ${maxConcurrentTasks}`);
+
+ const limit = pLimit(maxConcurrentTasks);
+ let i = 0;
return Promise.all(
packages.map(({ name, location }) =>
limit(
() =>
new Promise((res, rej) => {
- logger.log(`π« publishing ${name} (${location})`);
- const command = `cd ${location} && npm publish --registry ${url} --force --access restricted`;
+ logger.log(
+ `π« publishing ${name} (${location.replace(
+ path.resolve(path.join(__dirname, '..')),
+ '.'
+ )})`
+ );
+ const command = `cd ${location} && npm publish --registry ${url} --force --access restricted --ignore-scripts`;
exec(command, (e) => {
if (e) {
rej(e);
} else {
- logger.log(`π¬ successful publish of ${name}!`);
- res();
+ i += 1;
+ logger.log(`${i}/${packages.length} π¬ successful publish of ${name}!`);
+ res(undefined);
}
});
})
@@ -129,6 +145,19 @@ const publish = (packages: { name: string; location: string }[], url: string) =>
);
};
+// const addUser = (url: string) =>
+// new Promise((res, rej) => {
+// logger.log(`π€ add temp user to verdaccio`);
+
+// exec(`npx npm-cli-adduser -r "${url}" -a -u user -p password -e user@example.com`, (e) => {
+// if (e) {
+// rej(e);
+// } else {
+// res();
+// }
+// });
+// });
+
const run = async () => {
const port = await freePort(program.port);
logger.log(`π found a open port: ${port}`);
@@ -145,10 +174,11 @@ const run = async () => {
originalNpmRegistryUrl = 'https://registry.npmjs.org/';
}
- logger.log(`π reading version of wingsuit`);
- logger.log(`π listing wingsuit packages`);
+ logger.log(`π reading version of storybook`);
+ logger.log(`π listing storybook packages`);
logger.log(`π¬ starting verdaccio (this takes Β±5 seconds, so be patient)`);
+ // @ts-ignore
const [verdaccioServer, packages, version] = await Promise.all([
startVerdaccio(port),
listOfPackages(),
@@ -164,9 +194,10 @@ const run = async () => {
originalNpmRegistryUrl
);
+ // first time running, you might need to enable this
// await addUser(verdaccioUrl);
- logger.log(`π¦ found ${packages.length} wingsuit packages at version ${chalk.blue(version)}`);
+ logger.log(`π¦ found ${packages.length} storybook packages at version ${chalk.blue(version)}`);
if (program.publish) {
await publish(packages, verdaccioUrl);
diff --git a/scripts/utils/command.ts b/scripts/utils/command.ts
index 61a053461..5a129e013 100644
--- a/scripts/utils/command.ts
+++ b/scripts/utils/command.ts
@@ -1,7 +1,7 @@
import shell, { ExecOptions } from 'shelljs';
export const exec = async (command: string, options: ExecOptions = {}) =>
- new Promise((resolve, reject) => {
+ new Promise((resolve, reject) => {
shell.exec(command, options, (code) => {
if (code === 0) {
resolve();
diff --git a/scripts/utils/concurrency.js b/scripts/utils/concurrency.js
new file mode 100644
index 000000000..6745f3649
--- /dev/null
+++ b/scripts/utils/concurrency.js
@@ -0,0 +1,27 @@
+const os = require('os');
+
+/**
+ * The maximum number of concurrent tasks we want to have on some CLI and CI tasks.
+ * The amount of CPUS minus one, arbitrary limited to 15 to not overload CI executors.
+ * @type {number}
+ */
+const maxConcurrentTasks = Math.min(Math.max(1, os.cpus().length - 1), 15);
+
+/**
+ * Use a simple round robin to filter input data according to the CI node currently running the script
+ * @param {Array} arrayOfData An array of anything you want
+ * @returns {Array} An array containing only the data that shoud be used by current CI node.
+ */
+function filterDataForCurrentCircleCINode(arrayOfData) {
+ const nodeIndex = +process.env.CIRCLE_NODE_INDEX || 0;
+ const numberOfNodes = +process.env.CIRCLE_NODE_TOTAL || 1;
+
+ return arrayOfData.filter((_, index) => {
+ return index % numberOfNodes === nodeIndex;
+ });
+}
+
+module.exports = {
+ maxConcurrentTasks,
+ filterDataForCurrentCircleCINode,
+};
diff --git a/starter-kits/bootstrap/package.json b/starter-kits/bootstrap/package.json
index 9f597e01c..050c4cbbf 100644
--- a/starter-kits/bootstrap/package.json
+++ b/starter-kits/bootstrap/package.json
@@ -1,6 +1,6 @@
{
"name": "@wingsuit-designsystem/starter-kit-bootstrap",
- "version": "1.2.0-alpha.3",
+ "version": "1.2.9",
"description": "Wingsuit Starter-Kit for Bootstap 4",
"main": "",
"license": "GPL-2.0",
@@ -45,12 +45,12 @@
"@storybook/react": "^6.3.0",
"@types/react": "^16.9.35",
"@types/react-dom": "^16.9.8",
- "@wingsuit-designsystem/cli": "1.2.0-alpha.3",
- "@wingsuit-designsystem/core": "1.2.0-alpha.3",
- "@wingsuit-designsystem/pattern": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-postcss8": "1.2.0-alpha.3",
- "@wingsuit-designsystem/preset-scss": "1.2.0-alpha.3",
- "@wingsuit-designsystem/storybook": "1.2.0-alpha.3",
+ "@wingsuit-designsystem/cli": "1.2.9",
+ "@wingsuit-designsystem/core": "1.2.9",
+ "@wingsuit-designsystem/pattern": "1.2.9",
+ "@wingsuit-designsystem/preset-postcss8": "1.2.9",
+ "@wingsuit-designsystem/preset-scss": "1.2.9",
+ "@wingsuit-designsystem/storybook": "1.2.9",
"autoprefixer": "^9.7.4",
"core-js": "^3.4.1",
"cross-env": "^6.0.3",
diff --git a/starter-kits/bootstrap/source/default/namespaces.js b/starter-kits/bootstrap/source/default/namespaces.js
index c89ad058b..4b98b9344 100644
--- a/starter-kits/bootstrap/source/default/namespaces.js
+++ b/starter-kits/bootstrap/source/default/namespaces.js
@@ -8,7 +8,6 @@ const patterns = path.resolve(__dirname, 'patterns');
module.exports = {
tokens: path.resolve(__dirname, 'tokens'),
- clientside: path.resolve(__dirname, 'clientside'),
protons: path.resolve(patterns, '00-protons'),
atoms: path.resolve(patterns, '01-atoms'),
molecules: path.resolve(patterns, '02-molecules'),
diff --git a/starter-kits/bootstrap/source/default/patterns/01-atoms/placeholder/placeholder.wingsuit.yml b/starter-kits/bootstrap/source/default/patterns/01-atoms/placeholder/placeholder.wingsuit.yml
index 158fceb47..911a5fc23 100644
--- a/starter-kits/bootstrap/source/default/patterns/01-atoms/placeholder/placeholder.wingsuit.yml
+++ b/starter-kits/bootstrap/source/default/patterns/01-atoms/placeholder/placeholder.wingsuit.yml
@@ -16,10 +16,9 @@ placeholder:
placeholder_url:
label: Placeholder service
type: select
- preview: https://satyr.io/[width]x[height]
+ preview: https://via.placeholder.com/[width]x[height]
required: true
options:
- "https://satyr.io/[width]x[height]": https://satyr.io/
"https://via.placeholder.com/[width]x[height]": https://via.placeholder.com/
"https://fakeimg.pl/[width]x[height]": https://fakeimg.pl/
"https://placeimg.com/[width]/[height]/tech/grayscale": https://placeimg/
diff --git a/starter-kits/bootstrap/source/default/tokens/main.scss b/starter-kits/bootstrap/source/default/tokens/main.scss
index b2abbe6ba..4a25a2c2a 100644
--- a/starter-kits/bootstrap/source/default/tokens/main.scss
+++ b/starter-kits/bootstrap/source/default/tokens/main.scss
@@ -1,2 +1,4 @@
@import "custom";
+@import "defaults";
+@import "utils";
@import "~bootstrap/scss/bootstrap";
diff --git a/starter-kits/tailwind/.gitignore b/starter-kits/tailwind/.gitignore
index 71896e93d..1535ad8fc 100755
--- a/starter-kits/tailwind/.gitignore
+++ b/starter-kits/tailwind/.gitignore
@@ -4,6 +4,7 @@ _icons-generated.scss
dependencyGraph.json
patterns.zip
yarn-error.log
+build-storybook.log
# OS generated files
*.swp
diff --git a/starter-kits/tailwind/README.md b/starter-kits/tailwind/README.md
index ccede8f07..c07162d4f 100644
--- a/starter-kits/tailwind/README.md
+++ b/starter-kits/tailwind/README.md
@@ -34,5 +34,3 @@ To start drupal
```bash
yarn dev:drupal
```
-
-
diff --git a/starter-kits/tailwind/apps/drupal/includes/layout.theme.inc b/starter-kits/tailwind/apps/drupal/includes/layout.theme.inc
index 35d15ba49..0199f2361 100644
--- a/starter-kits/tailwind/apps/drupal/includes/layout.theme.inc
+++ b/starter-kits/tailwind/apps/drupal/includes/layout.theme.inc
@@ -6,19 +6,14 @@
*/
/**
- * Implements hook_preprocess_HOOK().
+ * Implements hook_preprocess().
*/
-function wingsuit_preprocess_page(&$variables) {
- $moduleHandler = \Drupal::service('module_handler');
- if ($moduleHandler->moduleExists('components')) {
- $variables['has_components_module'] = TRUE;
- }
-
+function wingsuit_preprocess(&$variables) {
if (wingsuit_is_layout_builder()) {
$variables['is_layout_builder'] = TRUE;
- } else {
+ }
+ else {
$variables['is_layout_builder'] = FALSE;
}
-
- $variables['header_has_spacer'] = TRUE;
}
+
diff --git a/starter-kits/tailwind/apps/drupal/includes/layout_builder.theme.inc b/starter-kits/tailwind/apps/drupal/includes/layout_builder.theme.inc
index a9fdf5989..bdd6be741 100644
--- a/starter-kits/tailwind/apps/drupal/includes/layout_builder.theme.inc
+++ b/starter-kits/tailwind/apps/drupal/includes/layout_builder.theme.inc
@@ -5,6 +5,7 @@
* Functions to support theming layout builder in Wingsuit theme.
*/
+use Drupal\node\NodeInterface;
/**
* Checks if current route is a layout builder route.
@@ -12,7 +13,7 @@
* @return bool
* True if it is a layout builder route.
*/
-function wingsuit_is_layout_builder(){
+function wingsuit_is_layout_builder() {
$route_name = \Drupal::routeMatch()->getRouteName();
if (preg_match('/^(layout_builder\.([^.]+\.)?)/', $route_name)) {
return TRUE;
@@ -27,8 +28,7 @@ function wingsuit_is_layout_builder(){
*/
function wingsuit_theme_suggestions_page_alter(array &$suggestions, array $variables) {
$node = \Drupal::routeMatch()->getParameter('node');
- if ($node !== NULL && $node instanceof \Drupal\node\NodeInterface) {
+ if ($node !== NULL && $node instanceof NodeInterface) {
$suggestions[] = 'page__' . $node->getEntityTypeId() . '__' . $node->bundle();
}
}
-
diff --git a/starter-kits/tailwind/apps/drupal/includes/link.theme.inc b/starter-kits/tailwind/apps/drupal/includes/link.theme.inc
index b47a13d1d..178dd3ee5 100644
--- a/starter-kits/tailwind/apps/drupal/includes/link.theme.inc
+++ b/starter-kits/tailwind/apps/drupal/includes/link.theme.inc
@@ -18,7 +18,7 @@ function wingsuit_link_attributes_plugin_alter(array &$plugins) {
'type' => 'select',
'options' => [
'default' => 'Default',
- 'outline' => 'Outline'
- ]
+ 'outline' => 'Outline',
+ ],
];
}
diff --git a/starter-kits/tailwind/apps/drupal/includes/misc.theme.inc b/starter-kits/tailwind/apps/drupal/includes/misc.theme.inc
index 2ff4839a6..ef828ecb8 100644
--- a/starter-kits/tailwind/apps/drupal/includes/misc.theme.inc
+++ b/starter-kits/tailwind/apps/drupal/includes/misc.theme.inc
@@ -4,4 +4,3 @@
* @file
* Functions to support theming miscellaneous things the Wingsuit theme.
*/
-
diff --git a/starter-kits/tailwind/apps/drupal/templates/content/media.html.twig b/starter-kits/tailwind/apps/drupal/templates/content/media.html.twig
index 946b8fd48..8924a060d 100644
--- a/starter-kits/tailwind/apps/drupal/templates/content/media.html.twig
+++ b/starter-kits/tailwind/apps/drupal/templates/content/media.html.twig
@@ -12,13 +12,7 @@
* @ingroup themeable
*/
#}
-{% if title_suffix is not empty or attributes['data-quickedit-entity-id'] %}
-
- {{ title_suffix }}
-{% endif %}
- {% if content %}
- {{ content }}
- {% endif %}
-{% if title_suffix is not empty or attributes['data-quickedit-entity-id'] %}
-
+
+{% if content %}
+ {{ content }}
{% endif %}
diff --git a/starter-kits/tailwind/apps/drupal/templates/easy_responsive_image/easy-responsive-images-formatter.html.twig b/starter-kits/tailwind/apps/drupal/templates/easy_responsive_image/easy-responsive-images-formatter.html.twig
new file mode 100644
index 000000000..decba421a
--- /dev/null
+++ b/starter-kits/tailwind/apps/drupal/templates/easy_responsive_image/easy-responsive-images-formatter.html.twig
@@ -0,0 +1,39 @@
+{# --
+ /**
+ * @file
+ * Default theme implementation to display a easy responsive images.
+ *
+ * Available variables:
+ * - url: An optional URL the image can be linked to.
+ * - src: The transformed src tag for the image, using the smallest defined width.
+ * - srcset[]: The srcset of the transformed image,
+ consisting of transformed url, transformed width & calculated height (if aspect ratio is used), and the srcset_url
+ * - loading_method: The loading attribute of the image.
+ * - decoding_method: The decoding attribute of the image.
+ * - fetch_priority: The fetch priority of the image.
+ * - width: The original width of the image.
+ * - height: The original height of the image.
+ * - alt: The alt text for the image.
+ * - item_attributes[]: attributes for the wrapper
+ * - data[]: json encoded drimage data object
+ * @see EasyResponsiveImagesFormatter
+ *
+ * @ingroup themeable
+ */
+-- #}
+
+{{ attach_library('easy_responsive_images/resizer') }}
+
+{% set easy_responsive_images_srcset = [] %}
+{% for source in srcset %}
+ {% set easy_responsive_images_srcset = easy_responsive_images_srcset
+ |merge([source.srcset_url]) %}
+{% endfor %}
+
diff --git a/starter-kits/tailwind/apps/drupal/templates/layout/page--user.html.twig b/starter-kits/tailwind/apps/drupal/templates/layout/page--user.html.twig
index 0521c9a8f..07fec4519 100755
--- a/starter-kits/tailwind/apps/drupal/templates/layout/page--user.html.twig
+++ b/starter-kits/tailwind/apps/drupal/templates/layout/page--user.html.twig
@@ -45,11 +45,12 @@
* @see html.html.twig
*/
#}
+
{% extends "page.html.twig" %}
{% block main %}
{% embed "@templates/basic/basic.twig" with {width: 'small' } %}
{% block headline %}
- Welcome to
the Peach Company!
+ Welcome
{% endblock %}
{% block content %}
{{ page.content }}
diff --git a/starter-kits/tailwind/apps/drupal/templates/layout/page.html.twig b/starter-kits/tailwind/apps/drupal/templates/layout/page.html.twig
index 89a016b67..ab3de4c31 100755
--- a/starter-kits/tailwind/apps/drupal/templates/layout/page.html.twig
+++ b/starter-kits/tailwind/apps/drupal/templates/layout/page.html.twig
@@ -54,7 +54,7 @@
{% embed "@templates/site-container.twig" with {
primary_menu: page.primary_menu,
language_select: page.language_switcher,
- footer_menu: page.footer,
+ footer_menu: page.footer_menu,
highlighted: page.highlighted
} %}
{% block main %}
diff --git a/starter-kits/tailwind/apps/drupal/wingsuit.libraries.yml b/starter-kits/tailwind/apps/drupal/wingsuit.libraries.yml
index 9b09bb0e8..451d4af37 100644
--- a/starter-kits/tailwind/apps/drupal/wingsuit.libraries.yml
+++ b/starter-kits/tailwind/apps/drupal/wingsuit.libraries.yml
@@ -19,4 +19,3 @@ core:
dependencies:
- core/drupal
- core/drupalSettings
- - drimage/drimage
diff --git a/starter-kits/tailwind/apps/storybook/preview-head.html b/starter-kits/tailwind/apps/storybook/preview-head.html
deleted file mode 100644
index 5a839f09c..000000000
--- a/starter-kits/tailwind/apps/storybook/preview-head.html
+++ /dev/null
@@ -1,6 +0,0 @@
-
diff --git a/starter-kits/tailwind/apps/storybook/preview.js b/starter-kits/tailwind/apps/storybook/preview.js
index bd1c65b75..f4b1fd414 100644
--- a/starter-kits/tailwind/apps/storybook/preview.js
+++ b/starter-kits/tailwind/apps/storybook/preview.js
@@ -63,6 +63,7 @@ configure(
section: 'Section',
section_slider: 'Section',
hero: 'Blocks',
+ banner: 'Blocks',
card: 'Blocks',
rich_text: 'Blocks',
button_group: 'Blocks',
diff --git a/starter-kits/tailwind/build-storybook.log b/starter-kits/tailwind/build-storybook.log
deleted file mode 100644
index de65be787..000000000
--- a/starter-kits/tailwind/build-storybook.log
+++ /dev/null
@@ -1,5483 +0,0 @@
-info @storybook/react v6.3.12
-info
-info => Cleaning outputDir: /tmp/chromatic--503780-NRaqkD0tH58m
-info => Loading presets
-info => Loading custom manager config
-info => Compiling manager..
-info => Compiling preview..
-info => Loading 1 config file in "/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook"
-info => Loading 4 other files in "/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook"
-info => Using PostCSS preset with postcss@8.3.11
-info => Using default Webpack4 setup
- [webpack.Progress] 0% compiling
- [webpack.Progress] 0% compiling
- [webpack.Progress] 10% building 0/0 modules 0 active
- [webpack.Progress] 10% building 0/0 modules 0 active
- [webpack.Progress] 10% building 0/1 modules 1 active multi /home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/core-client/dist/esm/globals/polyfills.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/core-client/dist/esm/globals/globals.js /home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/storybook-init-framework-entry.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/config.js-generated-other-entry.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js-generated-other-entry.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preset/addDecorator.js-generated-other-entry.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/preset/preview.js-generated-other-entry.js /home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/preview.js-generated-config-entry.js
- [webpack.Progress] 10% building 0/1 modules 1 active multi /home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/core-client/dist/esm/globals/polyfills.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/core-client/dist/esm/globals/globals.js /home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/storybook-init-framework-entry.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/config.js-generated-other-entry.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js-generated-other-entry.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preset/addDecorator.js-generated-other-entry.js /home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/preset/preview.js-generated-other-entry.js /home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/preview.js-generated-config-entry.js
- [webpack.Progress] 10% building 1/1 modules 0 active
- [webpack.Progress] 10% building 1/1 modules 0 active
-info => Loading custom manager config
- [webpack.Progress] 10% building 1/2 modules 1 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preset/addDecorator.js-generated-other-entry.js
- [webpack.Progress] 10% building 1/2 modules 1 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preset/addDecorator.js-generated-other-entry.js
- [webpack.Progress] 10% building 1/3 modules 2 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/preset/preview.js-generated-other-entry.js
- [webpack.Progress] 10% building 1/3 modules 2 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/preset/preview.js-generated-other-entry.js
- [webpack.Progress] 10% building 1/4 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/config.js-generated-other-entry.js
- [webpack.Progress] 10% building 1/4 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/config.js-generated-other-entry.js
- [webpack.Progress] 10% building 1/5 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js-generated-other-entry.js
- [webpack.Progress] 10% building 1/5 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js-generated-other-entry.js
- [webpack.Progress] 10% building 1/6 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/core-client/dist/esm/globals/polyfills.js
- [webpack.Progress] 10% building 1/6 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/core-client/dist/esm/globals/polyfills.js
- [webpack.Progress] 10% building 1/7 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/core-client/dist/esm/globals/globals.js
- [webpack.Progress] 10% building 1/7 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/core-client/dist/esm/globals/globals.js
- [webpack.Progress] 10% building 1/8 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/storybook-init-framework-entry.js
- [webpack.Progress] 10% building 1/8 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/storybook-init-framework-entry.js
- [webpack.Progress] 10% building 1/9 modules 8 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/preview.js-generated-config-entry.js
- [webpack.Progress] 10% building 1/9 modules 8 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/preview.js-generated-config-entry.js
- [webpack.Progress] 10% building 1/10 modules 9 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js
- [webpack.Progress] 10% building 1/10 modules 9 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js
- [webpack.Progress] 10% building 2/10 modules 8 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js
- [webpack.Progress] 10% building 2/10 modules 8 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js
- [webpack.Progress] 10% building 3/10 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js
- [webpack.Progress] 10% building 3/10 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js
- [webpack.Progress] 10% building 4/10 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js
- [webpack.Progress] 10% building 4/10 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js
- [webpack.Progress] 10% building 5/10 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js
- [webpack.Progress] 10% building 5/10 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/assets.js
- [webpack.Progress] 10% building 5/11 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preset/addDecorator.js
- [webpack.Progress] 10% building 5/11 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preset/addDecorator.js
- [webpack.Progress] 10% building 5/12 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/preset/preview.js
- [webpack.Progress] 10% building 5/12 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/preset/preview.js
- [webpack.Progress] 10% building 6/12 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/preset/preview.js
- [webpack.Progress] 10% building 6/12 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/preset/preview.js
- [webpack.Progress] 10% building 7/12 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/preset/preview.js
- [webpack.Progress] 10% building 7/12 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/preset/preview.js
- [webpack.Progress] 10% building 7/13 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/config.js
- [webpack.Progress] 10% building 7/13 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/config.js
- [webpack.Progress] 10% building 7/14 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 10% building 7/14 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 10% building 8/14 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 10% building 8/14 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 11% building 9/14 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 11% building 9/14 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 11% building 10/14 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 11% building 10/14 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 11% building 11/14 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 11% building 11/14 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 11% building 12/14 modules 2 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 11% building 12/14 modules 2 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/config.js
- [webpack.Progress] 11% building 13/14 modules 1 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/config.js
- [webpack.Progress] 11% building 13/14 modules 1 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/config.js
- [webpack.Progress] 11% building 14/14 modules 0 active
- [webpack.Progress] 11% building 14/14 modules 0 active
- [webpack.Progress] 11% building 14/15 modules 1 active /home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/source/default sync /\.(svg|png|webp|jpg|jpeg|gif|woff|woff2)$/
- [webpack.Progress] 11% building 14/15 modules 1 active /home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/source/default sync /\.(svg|png|webp|jpg|jpeg|gif|woff|woff2)$/
- [webpack.Progress] 11% building 14/16 modules 2 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/preview.js
- [webpack.Progress] 11% building 14/16 modules 2 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/preview.js
- [webpack.Progress] 11% building 14/17 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/withMeasure.js
- [webpack.Progress] 11% building 14/17 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/withMeasure.js
- [webpack.Progress] 11% building 14/18 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/index.js
- [webpack.Progress] 11% building 14/18 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/index.js
- [webpack.Progress] 11% building 14/19 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/web.dom-collections.for-each.js
- [webpack.Progress] 11% building 14/19 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/web.dom-collections.for-each.js
- [webpack.Progress] 11% building 14/20 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.to-string.js
- [webpack.Progress] 11% building 14/20 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.to-string.js
- [webpack.Progress] 11% building 14/21 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.array.iterator.js
- [webpack.Progress] 11% building 14/21 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.array.iterator.js
- [webpack.Progress] 11% building 14/22 modules 8 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/web.dom-collections.iterator.js
- [webpack.Progress] 11% building 14/22 modules 8 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/web.dom-collections.iterator.js
- [webpack.Progress] 11% building 14/23 modules 9 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.keys.js
- [webpack.Progress] 11% building 14/23 modules 9 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.keys.js
- [webpack.Progress] 11% building 14/24 modules 10 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.symbol.js
- [webpack.Progress] 11% building 14/24 modules 10 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.symbol.js
- [webpack.Progress] 11% building 14/25 modules 11 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.array.filter.js
- [webpack.Progress] 11% building 14/25 modules 11 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.array.filter.js
- [webpack.Progress] 11% building 14/26 modules 12 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.get-own-property-descriptor.js
- [webpack.Progress] 11% building 14/26 modules 12 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.get-own-property-descriptor.js
- [webpack.Progress] 11% building 14/27 modules 13 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.get-own-property-descriptors.js
- [webpack.Progress] 11% building 14/27 modules 13 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.get-own-property-descriptors.js
- [webpack.Progress] 11% building 14/28 modules 14 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/extractArgTypes.js
- [webpack.Progress] 11% building 14/28 modules 14 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/extractArgTypes.js
- [webpack.Progress] 11% building 14/29 modules 15 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/jsxDecorator.js
- [webpack.Progress] 11% building 14/29 modules 15 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/react/jsxDecorator.js
- [webpack.Progress] 11% building 14/30 modules 16 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 11% building 14/30 modules 16 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 11% building 15/30 modules 15 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 11% building 15/30 modules 15 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 11% building 16/30 modules 14 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 11% building 16/30 modules 14 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 17/30 modules 13 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 17/30 modules 13 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 18/30 modules 12 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 18/30 modules 12 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 19/30 modules 11 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 19/30 modules 11 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 20/30 modules 10 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 20/30 modules 10 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 21/30 modules 9 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 21/30 modules 9 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 22/30 modules 8 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 22/30 modules 8 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 23/30 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 23/30 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 24/30 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 12% building 24/30 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 13% building 25/30 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 13% building 25/30 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 13% building 26/30 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 13% building 26/30 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 13% building 27/30 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 13% building 27/30 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-docs/dist/esm/frameworks/common/enhanceArgTypes.js
- [webpack.Progress] 13% building 28/30 modules 2 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/preview.js
- [webpack.Progress] 13% building 28/30 modules 2 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--15-0!/home/cw/projects/wingsuit/wingsuit/node_modules/eslint-loader/dist/cjs.js??ref--7!/home/cw/projects/wingsuit/wingsuit/starter-kits/tailwind/apps/storybook/preview.js
- [webpack.Progress] 13% building 28/31 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.array.slice.js
- [webpack.Progress] 13% building 28/31 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.array.slice.js
- [webpack.Progress] 13% building 28/32 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.freeze.js
- [webpack.Progress] 13% building 28/32 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.freeze.js
- [webpack.Progress] 13% building 29/32 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.freeze.js
- [webpack.Progress] 13% building 29/32 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.freeze.js
- [webpack.Progress] 13% building 30/32 modules 2 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.freeze.js
- [webpack.Progress] 13% building 30/32 modules 2 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/modules/es.object.freeze.js
- [webpack.Progress] 13% building 30/33 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/regenerator-runtime/runtime.js
- [webpack.Progress] 13% building 30/33 modules 3 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/regenerator-runtime/runtime.js
- [webpack.Progress] 13% building 30/34 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/useHotKey.js
- [webpack.Progress] 13% building 30/34 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/useHotKey.js
- [webpack.Progress] 13% building 30/35 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/util.js
- [webpack.Progress] 13% building 30/35 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/util.js
- [webpack.Progress] 13% building 30/36 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preview.js
- [webpack.Progress] 13% building 30/36 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preview.js
- [webpack.Progress] 13% building 31/36 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preview.js
- [webpack.Progress] 13% building 31/36 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preview.js
- [webpack.Progress] 13% building 32/36 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preview.js
- [webpack.Progress] 13% building 32/36 modules 4 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-links/dist/esm/preview.js
- [webpack.Progress] 13% building 32/37 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/box-model/visualizer.js
- [webpack.Progress] 13% building 32/37 modules 5 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/box-model/visualizer.js
- [webpack.Progress] 13% building 32/38 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/box-model/canvas.js
- [webpack.Progress] 13% building 32/38 modules 6 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/@storybook/addon-measure/dist/esm/box-model/canvas.js
- [webpack.Progress] 13% building 32/39 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/redefine.js
- [webpack.Progress] 13% building 32/39 modules 7 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/redefine.js
- [webpack.Progress] 13% building 32/40 modules 8 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/to-string-tag-support.js
- [webpack.Progress] 13% building 32/40 modules 8 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/to-string-tag-support.js
- [webpack.Progress] 13% building 32/41 modules 9 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-to-string.js
- [webpack.Progress] 13% building 32/41 modules 9 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-to-string.js
- [webpack.Progress] 13% building 32/42 modules 10 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/global.js
- [webpack.Progress] 13% building 32/42 modules 10 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/global.js
- [webpack.Progress] 13% building 32/43 modules 11 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/dom-iterables.js
- [webpack.Progress] 13% building 32/43 modules 11 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/dom-iterables.js
- [webpack.Progress] 13% building 32/44 modules 12 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/dom-token-list-prototype.js
- [webpack.Progress] 13% building 32/44 modules 12 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/dom-token-list-prototype.js
- [webpack.Progress] 13% building 32/45 modules 13 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/array-for-each.js
- [webpack.Progress] 13% building 32/45 modules 13 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/array-for-each.js
- [webpack.Progress] 13% building 32/46 modules 14 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/create-non-enumerable-property.js
- [webpack.Progress] 13% building 32/46 modules 14 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/create-non-enumerable-property.js
- [webpack.Progress] 13% building 32/47 modules 15 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/to-indexed-object.js
- [webpack.Progress] 13% building 32/47 modules 15 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/to-indexed-object.js
- [webpack.Progress] 13% building 32/48 modules 16 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/add-to-unscopables.js
- [webpack.Progress] 13% building 32/48 modules 16 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/add-to-unscopables.js
- [webpack.Progress] 13% building 32/49 modules 17 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/iterators.js
- [webpack.Progress] 13% building 32/49 modules 17 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/iterators.js
- [webpack.Progress] 13% building 32/50 modules 18 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/internal-state.js
- [webpack.Progress] 13% building 32/50 modules 18 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/internal-state.js
- [webpack.Progress] 13% building 32/51 modules 19 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/define-iterator.js
- [webpack.Progress] 13% building 32/51 modules 19 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/define-iterator.js
- [webpack.Progress] 13% building 32/52 modules 20 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/well-known-symbol.js
- [webpack.Progress] 13% building 32/52 modules 20 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/well-known-symbol.js
- [webpack.Progress] 13% building 32/53 modules 21 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/export.js
- [webpack.Progress] 13% building 32/53 modules 21 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/export.js
- [webpack.Progress] 13% building 32/54 modules 22 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/to-object.js
- [webpack.Progress] 13% building 32/54 modules 22 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/to-object.js
- [webpack.Progress] 13% building 32/55 modules 23 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-keys.js
- [webpack.Progress] 13% building 32/55 modules 23 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-keys.js
- [webpack.Progress] 13% building 32/56 modules 24 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/fails.js
- [webpack.Progress] 13% building 32/56 modules 24 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/fails.js
- [webpack.Progress] 13% building 32/57 modules 25 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/get-built-in.js
- [webpack.Progress] 13% building 32/57 modules 25 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/get-built-in.js
- [webpack.Progress] 13% building 32/58 modules 26 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/function-apply.js
- [webpack.Progress] 13% building 32/58 modules 26 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/function-apply.js
- [webpack.Progress] 13% building 32/59 modules 27 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/function-call.js
- [webpack.Progress] 13% building 32/59 modules 27 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/function-call.js
- [webpack.Progress] 13% building 32/60 modules 28 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/function-uncurry-this.js
- [webpack.Progress] 13% building 32/60 modules 28 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/function-uncurry-this.js
- [webpack.Progress] 13% building 32/61 modules 29 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/is-pure.js
- [webpack.Progress] 13% building 32/61 modules 29 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/is-pure.js
- [webpack.Progress] 13% building 32/62 modules 30 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/descriptors.js
- [webpack.Progress] 13% building 32/62 modules 30 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/descriptors.js
- [webpack.Progress] 13% building 32/63 modules 31 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/native-symbol.js
- [webpack.Progress] 13% building 32/63 modules 31 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/native-symbol.js
- [webpack.Progress] 13% building 32/64 modules 32 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/has-own-property.js
- [webpack.Progress] 13% building 32/64 modules 32 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/has-own-property.js
- [webpack.Progress] 13% building 32/65 modules 33 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/is-array.js
- [webpack.Progress] 13% building 32/65 modules 33 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/is-array.js
- [webpack.Progress] 13% building 32/66 modules 34 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/is-callable.js
- [webpack.Progress] 13% building 32/66 modules 34 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/is-callable.js
- [webpack.Progress] 13% building 32/67 modules 35 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/is-object.js
- [webpack.Progress] 13% building 32/67 modules 35 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/is-object.js
- [webpack.Progress] 13% building 32/68 modules 36 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-is-prototype-of.js
- [webpack.Progress] 13% building 32/68 modules 36 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-is-prototype-of.js
- [webpack.Progress] 13% building 32/69 modules 37 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/is-symbol.js
- [webpack.Progress] 13% building 32/69 modules 37 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/is-symbol.js
- [webpack.Progress] 13% building 32/70 modules 38 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/an-object.js
- [webpack.Progress] 13% building 32/70 modules 38 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/an-object.js
- [webpack.Progress] 13% building 32/71 modules 39 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/to-property-key.js
- [webpack.Progress] 13% building 32/71 modules 39 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/to-property-key.js
- [webpack.Progress] 13% building 32/72 modules 40 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/to-string.js
- [webpack.Progress] 13% building 32/72 modules 40 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/to-string.js
- [webpack.Progress] 13% building 32/73 modules 41 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/create-property-descriptor.js
- [webpack.Progress] 13% building 32/73 modules 41 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/create-property-descriptor.js
- [webpack.Progress] 13% building 32/74 modules 42 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-create.js
- [webpack.Progress] 13% building 32/74 modules 42 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-create.js
- [webpack.Progress] 13% building 32/75 modules 43 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-get-own-property-names.js
- [webpack.Progress] 13% building 32/75 modules 43 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-get-own-property-names.js
- [webpack.Progress] 13% building 32/76 modules 44 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-get-own-property-names-external.js
- [webpack.Progress] 13% building 32/76 modules 44 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-get-own-property-names-external.js
- [webpack.Progress] 13% building 32/77 modules 45 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-get-own-property-symbols.js
- [webpack.Progress] 13% building 32/77 modules 45 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-get-own-property-symbols.js
- [webpack.Progress] 13% building 32/78 modules 46 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-get-own-property-descriptor.js
- [webpack.Progress] 13% building 32/78 modules 46 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-get-own-property-descriptor.js
- [webpack.Progress] 13% building 32/79 modules 47 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-define-property.js
- [webpack.Progress] 13% building 32/79 modules 47 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-define-property.js
- [webpack.Progress] 13% building 32/80 modules 48 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-property-is-enumerable.js
- [webpack.Progress] 13% building 32/80 modules 48 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/object-property-is-enumerable.js
- [webpack.Progress] 13% building 32/81 modules 49 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/array-slice.js
- [webpack.Progress] 13% building 32/81 modules 49 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/array-slice.js
- [webpack.Progress] 13% building 32/82 modules 50 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/shared.js
- [webpack.Progress] 13% building 32/82 modules 50 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/shared.js
- [webpack.Progress] 13% building 32/83 modules 51 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/shared-key.js
- [webpack.Progress] 13% building 32/83 modules 51 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/shared-key.js
- [webpack.Progress] 13% building 32/84 modules 52 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/hidden-keys.js
- [webpack.Progress] 13% building 32/84 modules 52 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/hidden-keys.js
- [webpack.Progress] 13% building 32/85 modules 53 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/uid.js
- [webpack.Progress] 13% building 32/85 modules 53 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/uid.js
- [webpack.Progress] 13% building 32/86 modules 54 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/well-known-symbol-wrapped.js
- [webpack.Progress] 13% building 32/86 modules 54 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/well-known-symbol-wrapped.js
- [webpack.Progress] 13% building 32/87 modules 55 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/define-well-known-symbol.js
- [webpack.Progress] 13% building 32/87 modules 55 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/define-well-known-symbol.js
- [webpack.Progress] 13% building 32/88 modules 56 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/set-to-string-tag.js
- [webpack.Progress] 13% building 32/88 modules 56 active /home/cw/projects/wingsuit/wingsuit/node_modules/core-js/internals/set-to-string-tag.js
- [webpack.Progress] 13% building 32/89 modules 57 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/global/window.js
- [webpack.Progress] 13% building 32/89 modules 57 active /home/cw/projects/wingsuit/wingsuit/node_modules/babel-loader/lib/index.js??ref--8!/home/cw/projects/wingsuit/wingsuit/node_modules/global/window.js
-