@emulsify/core 1.4.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@emulsify/core",
3
- "version": "1.4.0",
3
+ "version": "2.1.0",
4
4
  "description": "Bundled tooling for Storybook development + Webpack Build",
5
5
  "keywords": [
6
6
  "component library",
@@ -48,15 +48,18 @@
48
48
  "dependencies": {
49
49
  "@babel/core": "^7.25.2",
50
50
  "@babel/eslint-parser": "^7.25.1",
51
- "@emulsify/cli": "^1.10.2",
52
- "@storybook/addon-a11y": "^7.6.17",
53
- "@storybook/addon-actions": "^7.6.17",
54
- "@storybook/addon-essentials": "^7.6.17",
55
- "@storybook/addon-links": "^7.6.17",
51
+ "@emulsify/cli": "^1.11.0",
52
+ "@storybook/addon-a11y": "^8.2.9",
53
+ "@storybook/addon-actions": "^8.2.9",
54
+ "@storybook/addon-essentials": "^8.2.9",
55
+ "@storybook/addon-links": "^8.2.9",
56
56
  "@storybook/addon-styling-webpack": "^1.0.0",
57
- "@storybook/addon-themes": "^7.6.17",
58
- "@storybook/html": "^7.6.17",
59
- "@storybook/html-webpack5": "^7.6.17",
57
+ "@storybook/addon-themes": "^8.2.9",
58
+ "@storybook/html": "^8.2.9",
59
+ "@storybook/html-webpack5": "^8.2.9",
60
+ "@storybook/manager-api": "^8.2.9",
61
+ "@storybook/preview-api": "^8.2.9",
62
+ "@storybook/theming": "^8.2.9",
60
63
  "add-attributes-twig-extension": "^0.1.0",
61
64
  "autoprefixer": "^10.4.20",
62
65
  "babel-loader": "^9.1.3",
@@ -66,33 +69,36 @@
66
69
  "chalk": "^5.2.0",
67
70
  "clean-webpack-plugin": "^4.0.0",
68
71
  "concurrently": "^8.2.2",
72
+ "copy-webpack-plugin": "^12.0.2",
69
73
  "css-loader": "^7.1.1",
70
74
  "eslint": "^8.57.0",
71
- "eslint-config-airbnb-base": "^15.0.0",
72
75
  "eslint-config-prettier": "^9.1.0",
73
76
  "eslint-plugin-import": "^2.29.1",
74
- "eslint-plugin-jest": "^27.9.0",
77
+ "eslint-plugin-jest": "^28.8.0",
75
78
  "eslint-plugin-prettier": "^5.1.3",
76
- "eslint-plugin-security": "^2.1.1",
79
+ "eslint-plugin-security": "^3.0.1",
77
80
  "eslint-plugin-storybook": "^0.8.0",
78
81
  "eslint-webpack-plugin": "^4.1.0",
79
82
  "file-loader": "^6.2.0",
80
83
  "fs-extra": "^11.2.0",
81
- "glob": "^10.3.12",
84
+ "glob": "^11.0.0",
82
85
  "graceful-fs": "^4.2.11",
83
86
  "html-webpack-plugin": "^5.6.0",
84
- "imagemin-webpack-plugin": "^2.4.2",
87
+ "image-minimizer-webpack-plugin": "^4.1.0",
88
+ "imagemin": "^9.0.0",
89
+ "imagemin-gifsicle": "^7.0.0",
90
+ "imagemin-jpegtran": "^7.0.0",
91
+ "imagemin-optipng": "^8.0.0",
85
92
  "jest": "^29.7.0",
86
93
  "jest-environment-jsdom": "^29.7.0",
87
94
  "js-yaml": "^4.1.0",
88
95
  "js-yaml-loader": "^1.2.2",
89
- "lint-staged": "^15.2.8",
90
- "mini-css-extract-plugin": "^2.9.0",
96
+ "mini-css-extract-plugin": "^2.9.1",
91
97
  "node-sass-glob-importer": "^5.3.3",
92
98
  "normalize.css": "^8.0.1",
93
99
  "open-cli": "^8.0.0",
94
100
  "pa11y": "^8.0.0",
95
- "postcss": "^8.4.41",
101
+ "postcss": "^8.4.44",
96
102
  "postcss-loader": "^8.1.1",
97
103
  "postcss-scss": "^4.0.9",
98
104
  "ramda": "^0.30.1",
@@ -100,10 +106,11 @@
100
106
  "react-dom": "^18.2.0",
101
107
  "regenerator-runtime": "^0.14.1",
102
108
  "sass": "^1.75.0",
103
- "sass-loader": "^16.0.0",
104
- "storybook": "^7.6.17",
105
- "style-dictionary": "^3.9.2",
106
- "stylelint": "^16.8.1",
109
+ "sass-loader": "^16.0.1",
110
+ "semantic-release": "^24.1.0",
111
+ "storybook": "^8.2.9",
112
+ "style-dictionary": "^4.1.0",
113
+ "stylelint": "^16.9.0",
107
114
  "stylelint-config-standard-scss": "^13.1.0",
108
115
  "stylelint-prettier": "^5.0.0",
109
116
  "stylelint-selector-bem-pattern": "^4.0.0",
@@ -111,23 +118,23 @@
111
118
  "svg-sprite-loader": "^6.0.11",
112
119
  "token-transformer": "^0.0.33",
113
120
  "twig-drupal-filters": "^3.2.0",
114
- "twig-loader": "github:fourkitchens/twig-loader",
115
121
  "twig-testing-library": "^1.2.0",
122
+ "twigjs-loader": "^1.0.3",
116
123
  "webpack": "^5.91.0",
117
124
  "webpack-cli": "^5.1.4",
118
125
  "webpack-merge": "^6.0.1",
119
126
  "yaml": "^2.5.0"
120
127
  },
121
128
  "devDependencies": {
122
- "@commitlint/cli": "^19.3.0",
123
- "@commitlint/config-conventional": "^19.1.0",
129
+ "@commitlint/cli": "^19.4.1",
130
+ "@commitlint/config-conventional": "^19.4.1",
124
131
  "@semantic-release/changelog": "^6.0.2",
125
132
  "@semantic-release/commit-analyzer": "^13.0.0",
126
133
  "@semantic-release/git": "^10.0.1",
127
- "@semantic-release/github": "^10.1.3",
134
+ "@semantic-release/github": "^10.3.0",
128
135
  "@semantic-release/release-notes-generator": "^14.0.0",
129
- "husky": "^9.1.4",
130
- "semantic-release": "^24.0.0"
136
+ "husky": "^9.1.5",
137
+ "lint-staged": "^15.2.10"
131
138
  },
132
139
  "overrides": {
133
140
  "graceful-fs": "^4.2.11"
@@ -1,153 +0,0 @@
1
- const { configOverrides } = require('../../../../config/emulsify-core/storybook/main');
2
-
3
- const defaultConfig = {
4
- stories: [
5
- '../../../../components/**/*.stories.@(js|jsx|ts|tsx)',
6
- ],
7
- addons: [
8
- '../../../@storybook/addon-a11y',
9
- '../../../@storybook/addon-links',
10
- '../../../@storybook/addon-essentials',
11
- '../../../@storybook/addon-themes',
12
- '../../../@storybook/addon-styling-webpack'
13
- ],
14
- core: {
15
- builder: 'webpack5',
16
- },
17
- framework: {
18
- name: '@storybook/html-webpack5',
19
- options: {},
20
- },
21
- docs: {
22
- autodocs: true,
23
- },
24
- managerHead: (head) => `
25
- ${head}
26
- <style>
27
- :root {
28
- --colors-emulsify-blue-100: #e6f5fc;
29
- --colors-emulsify-blue-200: #CCECFA;
30
- --colors-emulsify-blue-300: #99D9F4;
31
- --colors-emulsify-blue-400: #66c5ef;
32
- --colors-emulsify-blue-500: #33b2e9;
33
- --colors-emulsify-blue-600: #009fe4;
34
- --colors-emulsify-blue-700: #007FB6;
35
- --colors-emulsify-blue-800: #005f89;
36
- --colors-emulsify-blue-900: #00405b;
37
- --colors-emulsify-blue-1000: #00202e;
38
- --colors-purple: #8B1E7E;
39
- }
40
-
41
- .sidebar-container {
42
- background: url('https://raw.githubusercontent.com/fourkitchens/emulsify-core/main/assets/images/corner-bkg.png?token=GHSAT0AAAAAACIEXLVDMX56QK3ZIZWHWHTEZNYFYIA') no-repeat top left;
43
- }
44
-
45
- .sidebar-container .sidebar-subheading {
46
- color: var(--colors-emulsify-blue-200);
47
- font-size: 13px;
48
- letter-spacing: 0.15em;
49
- }
50
-
51
- .sidebar-container .sidebar-subheading button:focus {
52
- color: var(--colors-emulsify-blue-300);
53
- }
54
-
55
- /** Triangle icon **/
56
- .sidebar-container .sidebar-subheading button span {
57
- color: var(--colors-emulsify-blue-300);
58
- }
59
-
60
- .sidebar-container .search-field input {
61
- border-color: var(--colors-emulsify-blue-700);
62
- }
63
-
64
- .sidebar-container .search-field input:active {
65
- border-color: var(--colors-emulsify-blue-700);
66
- }
67
-
68
- .sidebar-container .search-result-recentlyOpened,
69
- .sidebar-container .search-result-back,
70
- .sidebar-container .search-result-clearHistory {
71
- color: var(--colors-emulsify-blue-300) !important;
72
- letter-spacing: 0.15em;
73
- }
74
-
75
- .sidebar-container .search-result-back span,
76
- .sidebar-container .search-result-back svg,
77
- .sidebar-container .search-result-clearHistory span,
78
- .sidebar-container .search-result-clearHistory svg {
79
- letter-spacing: normal;
80
- color: white;
81
- }
82
-
83
- .sidebar-container .sidebar-item svg {
84
- margin-top: 1px;
85
- }
86
-
87
- .sidebar-container .sidebar-item span {
88
- margin-top: 4px;
89
- }
90
-
91
- .sidebar-container .sidebar-subheading-action svg {
92
- color: var(--colors-emulsify-blue-400);
93
- }
94
-
95
- .sidebar-container .sidebar-subheading-action:hover svg {
96
- color: var(--colors-emulsify-blue-300);
97
- }
98
-
99
- .sidebar-header button[title="Shortcuts"] {
100
- box-shadow: none;
101
- border: 1px solid var(--colors-emulsify-blue-700);
102
- }
103
-
104
- .sidebar-header button[title="Shortcuts"]:active {
105
- border: 1px solid var(--colors-emulsify-blue-500);
106
- }
107
-
108
- .sidebar-header button[title="Shortcuts"]:focus {
109
- background: transparent;
110
- }
111
-
112
- #shortcuts {
113
- border-bottom-color: var(--colors-emulsify-blue-900) !important;
114
- }
115
-
116
- [role="main"]:not(:nth-child(3)) {
117
- top: 1rem !important;
118
- height: calc(100vh - 2rem) !important;
119
- }
120
-
121
- [role="main"] .os-host .os-content button:hover {
122
- background: var(--colors-emulsify-blue-100);
123
- }
124
-
125
- [role="main"] .os-host .os-content button:hover svg {
126
- color: var(--colors-emulsify-blue-900);
127
- }
128
-
129
- #panel-tab-content,
130
- #panel-tab-content>* {
131
- color: var(--colors-emulsify-blue-1000) !important;
132
- }
133
-
134
- #panel-tab-content a,
135
- #panel-tab-content a span,
136
- #panel-tab-content a span svg {
137
- color: var(--colors-emulsify-blue-800);
138
- }
139
-
140
- #panel-tab-content>div>div>div>div>div>div {
141
- background: transparent;
142
- }
143
-
144
- #panel-tab-content>div>div>div>div>div>div>div {
145
- color: var(--colors-emulsify-blue-1000) !important;
146
- }
147
- </style>
148
- `,
149
- };
150
-
151
- const config = Object.keys(configOverrides).length ? configOverrides : defaultConfig;
152
-
153
- module.exports = config;
@@ -1,153 +0,0 @@
1
- const { configOverrides } = require('../../../../config/emulsify-core/storybook/main');
2
-
3
- const defaultConfig = {
4
- stories: [
5
- '../../../../components/**/*.stories.@(js|jsx|ts|tsx)',
6
- ],
7
- addons: [
8
- '../../../@storybook/addon-a11y',
9
- '../../../@storybook/addon-links',
10
- '../../../@storybook/addon-essentials',
11
- '../../../@storybook/addon-themes',
12
- '../../../@storybook/addon-styling-webpack'
13
- ],
14
- core: {
15
- builder: 'webpack5',
16
- },
17
- framework: {
18
- name: '@storybook/html-webpack5',
19
- options: {},
20
- },
21
- docs: {
22
- autodocs: false,
23
- },
24
- managerHead: (head) => `
25
- ${head}
26
- <style>
27
- :root {
28
- --colors-emulsify-blue-100: #e6f5fc;
29
- --colors-emulsify-blue-200: #CCECFA;
30
- --colors-emulsify-blue-300: #99D9F4;
31
- --colors-emulsify-blue-400: #66c5ef;
32
- --colors-emulsify-blue-500: #33b2e9;
33
- --colors-emulsify-blue-600: #009fe4;
34
- --colors-emulsify-blue-700: #007FB6;
35
- --colors-emulsify-blue-800: #005f89;
36
- --colors-emulsify-blue-900: #00405b;
37
- --colors-emulsify-blue-1000: #00202e;
38
- --colors-purple: #8B1E7E;
39
- }
40
-
41
- .sidebar-container {
42
- background: url('https://raw.githubusercontent.com/fourkitchens/emulsify-core/main/assets/images/corner-bkg.png?token=GHSAT0AAAAAACIEXLVDMX56QK3ZIZWHWHTEZNYFYIA') no-repeat top left;
43
- }
44
-
45
- .sidebar-container .sidebar-subheading {
46
- color: var(--colors-emulsify-blue-200);
47
- font-size: 13px;
48
- letter-spacing: 0.15em;
49
- }
50
-
51
- .sidebar-container .sidebar-subheading button:focus {
52
- color: var(--colors-emulsify-blue-300);
53
- }
54
-
55
- /** Triangle icon **/
56
- .sidebar-container .sidebar-subheading button span {
57
- color: var(--colors-emulsify-blue-300);
58
- }
59
-
60
- .sidebar-container .search-field input {
61
- border-color: var(--colors-emulsify-blue-700);
62
- }
63
-
64
- .sidebar-container .search-field input:active {
65
- border-color: var(--colors-emulsify-blue-700);
66
- }
67
-
68
- .sidebar-container .search-result-recentlyOpened,
69
- .sidebar-container .search-result-back,
70
- .sidebar-container .search-result-clearHistory {
71
- color: var(--colors-emulsify-blue-300) !important;
72
- letter-spacing: 0.15em;
73
- }
74
-
75
- .sidebar-container .search-result-back span,
76
- .sidebar-container .search-result-back svg,
77
- .sidebar-container .search-result-clearHistory span,
78
- .sidebar-container .search-result-clearHistory svg {
79
- letter-spacing: normal;
80
- color: white;
81
- }
82
-
83
- .sidebar-container .sidebar-item svg {
84
- margin-top: 1px;
85
- }
86
-
87
- .sidebar-container .sidebar-item span {
88
- margin-top: 4px;
89
- }
90
-
91
- .sidebar-container .sidebar-subheading-action svg {
92
- color: var(--colors-emulsify-blue-400);
93
- }
94
-
95
- .sidebar-container .sidebar-subheading-action:hover svg {
96
- color: var(--colors-emulsify-blue-300);
97
- }
98
-
99
- .sidebar-header button[title="Shortcuts"] {
100
- box-shadow: none;
101
- border: 1px solid var(--colors-emulsify-blue-700);
102
- }
103
-
104
- .sidebar-header button[title="Shortcuts"]:active {
105
- border: 1px solid var(--colors-emulsify-blue-500);
106
- }
107
-
108
- .sidebar-header button[title="Shortcuts"]:focus {
109
- background: transparent;
110
- }
111
-
112
- #shortcuts {
113
- border-bottom-color: var(--colors-emulsify-blue-900) !important;
114
- }
115
-
116
- [role="main"]:not(:nth-child(3)) {
117
- top: 1rem !important;
118
- height: calc(100vh - 2rem) !important;
119
- }
120
-
121
- [role="main"] .os-host .os-content button:hover {
122
- background: var(--colors-emulsify-blue-100);
123
- }
124
-
125
- [role="main"] .os-host .os-content button:hover svg {
126
- color: var(--colors-emulsify-blue-900);
127
- }
128
-
129
- #panel-tab-content,
130
- #panel-tab-content>* {
131
- color: var(--colors-emulsify-blue-1000) !important;
132
- }
133
-
134
- #panel-tab-content a,
135
- #panel-tab-content a span,
136
- #panel-tab-content a span svg {
137
- color: var(--colors-emulsify-blue-800);
138
- }
139
-
140
- #panel-tab-content>div>div>div>div>div>div {
141
- background: transparent;
142
- }
143
-
144
- #panel-tab-content>div>div>div>div>div>div>div {
145
- color: var(--colors-emulsify-blue-1000) !important;
146
- }
147
- </style>
148
- `,
149
- };
150
-
151
- const config = Object.keys(configOverrides).length ? configOverrides : defaultConfig;
152
-
153
- module.exports = config;
@@ -1,135 +0,0 @@
1
- {
2
- "name": "@emulsify/core",
3
- "version": "1.3.1",
4
- "description": "Bundled tooling for Storybook development + Webpack Build",
5
- "keywords": [
6
- "component library",
7
- "design system",
8
- "drupal",
9
- "pattern library",
10
- "storybook",
11
- "styleguide"
12
- ],
13
- "author": "Four Kitchens <shout@fourkitchens.com>",
14
- "license": "GPL-2.0",
15
- "engines": {
16
- "node": ">=20"
17
- },
18
- "repository": {
19
- "type": "git",
20
- "url": "git+https://github.com/emulsify-ds/emulsify-core.git"
21
- },
22
- "bugs": {
23
- "url": "https://github.com/emulsify-ds/emulsify-core/issues"
24
- },
25
- "homepage": "https://github.com/emulsify-ds/emulsify-core#readme",
26
- "publishConfig": {
27
- "access": "public"
28
- },
29
- "scripts": {
30
- "coverage": "npm run test && open-cli .coverage/lcov-report/index.html",
31
- "format": "npm run lint-fix; npm run prettier-fix",
32
- "husky:commit-msg": "commitlint --edit $1",
33
- "husky:pre-commit": "npm run lint",
34
- "lint": "npm run lint-js",
35
- "lint-fix": "npm run lint-js -- --fix",
36
- "lint-js": "eslint --config config/eslintrc.config.json --no-error-on-unmatched-pattern ./config ./storybook",
37
- "lint-staged": "lint-staged",
38
- "prepare": "[ -d '.git' ] && (husky install) || true",
39
- "prettier": "prettier --config config/prettierrc.json --ignore-unknown \"**/*.{js,yml,scss,md}\"",
40
- "prettier-fix": "prettier --config config/prettierrc.json --write --ignore-unknown \"**/*.{js,yml,scss,md}\"",
41
- "semantic-release": "semantic-release",
42
- "storybook": "storybook dev --ci -s ../../dist,../../assets/images,../../assets/icons,../../assets/videos -p 6006",
43
- "storybook-build": "storybook build -s ../../dist,../../assets/images,../../assets/icons,../../assets/videos -o .out",
44
- "storybook-deploy": "storybook-to-ghpages -o .out",
45
- "test": "jest --coverage --config ./config/jest.config.js",
46
- "twatch": "jest --no-coverage --watch --verbose"
47
- },
48
- "dependencies": {
49
- "@babel/core": "^7.25.2",
50
- "@babel/eslint-parser": "^7.25.1",
51
- "@emulsify/cli": "^1.10.2",
52
- "@storybook/addon-a11y": "^7.6.17",
53
- "@storybook/addon-actions": "^7.6.17",
54
- "@storybook/addon-essentials": "^7.6.17",
55
- "@storybook/addon-links": "^7.6.17",
56
- "@storybook/addon-styling-webpack": "^1.0.0",
57
- "@storybook/addon-themes": "^7.6.17",
58
- "@storybook/html": "^7.6.17",
59
- "@storybook/html-webpack5": "^7.6.17",
60
- "add-attributes-twig-extension": "^0.1.0",
61
- "autoprefixer": "^10.4.20",
62
- "babel-loader": "^9.1.3",
63
- "babel-preset-minify": "^0.5.2",
64
- "bem-twig-extension": "^0.1.1",
65
- "breakpoint-sass": "^3.0.0",
66
- "chalk": "^5.2.0",
67
- "clean-webpack-plugin": "^4.0.0",
68
- "concurrently": "^8.2.2",
69
- "css-loader": "^7.1.1",
70
- "eslint": "^8.57.0",
71
- "eslint-config-airbnb-base": "^15.0.0",
72
- "eslint-config-prettier": "^9.1.0",
73
- "eslint-plugin-import": "^2.29.1",
74
- "eslint-plugin-jest": "^27.9.0",
75
- "eslint-plugin-prettier": "^5.1.3",
76
- "eslint-plugin-security": "^2.1.1",
77
- "eslint-plugin-storybook": "^0.8.0",
78
- "eslint-webpack-plugin": "^4.1.0",
79
- "file-loader": "^6.2.0",
80
- "fs-extra": "^11.2.0",
81
- "glob": "^10.3.12",
82
- "graceful-fs": "^4.2.11",
83
- "html-webpack-plugin": "^5.6.0",
84
- "imagemin-webpack-plugin": "^2.4.2",
85
- "jest": "^29.7.0",
86
- "jest-environment-jsdom": "^29.7.0",
87
- "js-yaml": "^4.1.0",
88
- "js-yaml-loader": "^1.2.2",
89
- "lint-staged": "^15.2.8",
90
- "mini-css-extract-plugin": "^2.9.0",
91
- "node-sass-glob-importer": "^5.3.3",
92
- "normalize.css": "^8.0.1",
93
- "open-cli": "^8.0.0",
94
- "pa11y": "^8.0.0",
95
- "postcss": "^8.4.41",
96
- "postcss-loader": "^8.1.1",
97
- "postcss-scss": "^4.0.9",
98
- "ramda": "^0.30.1",
99
- "react": "^18.2.0",
100
- "react-dom": "^18.2.0",
101
- "regenerator-runtime": "^0.14.1",
102
- "sass": "^1.75.0",
103
- "sass-loader": "^16.0.0",
104
- "storybook": "^7.6.17",
105
- "style-dictionary": "^3.9.2",
106
- "stylelint": "^16.8.1",
107
- "stylelint-config-standard-scss": "^13.1.0",
108
- "stylelint-prettier": "^5.0.0",
109
- "stylelint-selector-bem-pattern": "^4.0.0",
110
- "stylelint-webpack-plugin": "^5.0.1",
111
- "svg-sprite-loader": "^6.0.11",
112
- "token-transformer": "^0.0.33",
113
- "twig-drupal-filters": "^3.2.0",
114
- "twig-loader": "github:fourkitchens/twig-loader",
115
- "twig-testing-library": "^1.2.0",
116
- "webpack": "^5.91.0",
117
- "webpack-cli": "^5.1.4",
118
- "webpack-merge": "^6.0.1",
119
- "yaml": "^2.5.0"
120
- },
121
- "devDependencies": {
122
- "@commitlint/cli": "^19.3.0",
123
- "@commitlint/config-conventional": "^19.1.0",
124
- "@semantic-release/changelog": "^6.0.2",
125
- "@semantic-release/commit-analyzer": "^13.0.0",
126
- "@semantic-release/git": "^10.0.1",
127
- "@semantic-release/github": "^10.1.3",
128
- "@semantic-release/release-notes-generator": "^14.0.0",
129
- "husky": "^9.1.4",
130
- "semantic-release": "^24.0.0"
131
- },
132
- "overrides": {
133
- "graceful-fs": "^4.2.11"
134
- }
135
- }