Commit 1cd21b98 by Harish Patel

added ckeditor

1 parent 3a50409b
...@@ -13,9 +13,9 @@ ...@@ -13,9 +13,9 @@
"@strapi/plugin-users-permissions": "4.3.6", "@strapi/plugin-users-permissions": "4.3.6",
"@strapi/strapi": "4.3.6", "@strapi/strapi": "4.3.6",
"better-sqlite3": "7.4.6", "better-sqlite3": "7.4.6",
"pg": "^8.8.0" "pg": "^8.8.0",
"strapi-plugin-ckeditor5": "^2.1.1-rc.1"
}, },
"devDependencies": {},
"engines": { "engines": {
"node": ">=14.19.1 <=16.x.x", "node": ">=14.19.1 <=16.x.x",
"npm": ">=6.0.0" "npm": ">=6.0.0"
...@@ -1834,6 +1834,21 @@ ...@@ -1834,6 +1834,21 @@
"url": "https://github.com/stalniy/casl/blob/master/BACKERS.md" "url": "https://github.com/stalniy/casl/blob/master/BACKERS.md"
} }
}, },
"node_modules/@ckeditor/ckeditor5-react": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-react/-/ckeditor5-react-4.0.1.tgz",
"integrity": "sha512-5qKZn8EVBeEYzmDrgpq31dC2rqcJ341xKQmuj7JYzT9szsuIIzI4zOm3cf9IIglRXVWCuWvELJs8qmRNW19dzg==",
"dependencies": {
"prop-types": "^15.7.2"
},
"engines": {
"node": ">=14.0.0",
"npm": ">=5.7.1"
},
"peerDependencies": {
"react": "^16.13.1 || ^17.0.0 || ^18.0.0"
}
},
"node_modules/@colors/colors": { "node_modules/@colors/colors": {
"version": "1.5.0", "version": "1.5.0",
"resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
...@@ -5428,6 +5443,15 @@ ...@@ -5428,6 +5443,15 @@
"safe-buffer": "^5.0.1" "safe-buffer": "^5.0.1"
} }
}, },
"node_modules/ckeditor5-build-strapi-wysiwyg": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ckeditor5-build-strapi-wysiwyg/-/ckeditor5-build-strapi-wysiwyg-2.1.1.tgz",
"integrity": "sha512-Mma+bcVUZ8xH+PEHoB8FroMPocIgs+6Fqg94Q4yqOYI+xXRWAds3GzY8SsZC43Dlo9NgN72mWP4W8cZ0xLUIow==",
"engines": {
"node": ">=14.0.0",
"npm": ">=5.7.1"
}
},
"node_modules/class-utils": { "node_modules/class-utils": {
"version": "0.3.6", "version": "0.3.6",
"resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
...@@ -15203,6 +15227,53 @@ ...@@ -15203,6 +15227,53 @@
"integrity": "sha512-D/uYFWkI/31OrnKmXZqGAGK5GbQRPp/BWA1nuITcc6ICblhhuQUPHS5E2GSCVS7Hwhf4ciq8qsATwBUxv+lI6w==", "integrity": "sha512-D/uYFWkI/31OrnKmXZqGAGK5GbQRPp/BWA1nuITcc6ICblhhuQUPHS5E2GSCVS7Hwhf4ciq8qsATwBUxv+lI6w==",
"license": "MIT" "license": "MIT"
}, },
"node_modules/strapi-plugin-ckeditor5": {
"version": "2.1.1-rc.1",
"resolved": "https://registry.npmjs.org/strapi-plugin-ckeditor5/-/strapi-plugin-ckeditor5-2.1.1-rc.1.tgz",
"integrity": "sha512-8bFcSn6Gp5NKgIuT/+Q2MT7grxWJ5un1ckuyTgH/7MyuBAbUTszUsma4hzd0yXo9ZXr+mfYsaLI8pXmrSlWOvA==",
"dependencies": {
"@ckeditor/ckeditor5-react": "^4.0.0",
"@strapi/design-system": "^0.0.1-alpha.70",
"@strapi/helper-plugin": "^4.1.5",
"ckeditor5-build-strapi-wysiwyg": "^2.1.1",
"react": "^17.0.2",
"react-dom": "^17.0.2"
},
"engines": {
"node": ">=10.0.0",
"npm": ">=6.0.0"
}
},
"node_modules/strapi-plugin-ckeditor5/node_modules/@strapi/design-system": {
"version": "0.0.1-alpha.79",
"resolved": "https://registry.npmjs.org/@strapi/design-system/-/design-system-0.0.1-alpha.79.tgz",
"integrity": "sha512-o/F55Qjwao1HkqKcL8ovQ280QijJH8dLfzP+t3XMNL5Ihh3HBD2wcMS6dOsrnNDGdDE0LWQfG8bDbLPmWHmk1A==",
"dependencies": {
"@internationalized/number": "^3.0.2",
"compute-scroll-into-view": "^1.0.17",
"prop-types": "^15.7.2"
},
"peerDependencies": {
"@strapi/icons": "^0.0.1-alpha.73",
"react": "^17.0.1",
"react-dom": "^17.0.1",
"react-router-dom": "^5.2.0",
"styled-components": "^5.2.1"
}
},
"node_modules/strapi-plugin-ckeditor5/node_modules/@strapi/icons": {
"version": "0.0.1-alpha.79",
"resolved": "https://registry.npmjs.org/@strapi/icons/-/icons-0.0.1-alpha.79.tgz",
"integrity": "sha512-mIPzpwOir92939rSRuRS22GLWFpLfQDyoK0vMZUsGD7uujNnRon//TUa9DJTjTHjdEjRwWO60JbJOePgJ+2cvg==",
"peer": true,
"dependencies": {
"rimraf": "^3.0.2"
},
"peerDependencies": {
"react": "^17.0.1",
"react-dom": "^17.0.1"
}
},
"node_modules/stream-browserify": { "node_modules/stream-browserify": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz",
...@@ -18163,6 +18234,14 @@ ...@@ -18163,6 +18234,14 @@
"@ucast/mongo2js": "^1.3.0" "@ucast/mongo2js": "^1.3.0"
} }
}, },
"@ckeditor/ckeditor5-react": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-react/-/ckeditor5-react-4.0.1.tgz",
"integrity": "sha512-5qKZn8EVBeEYzmDrgpq31dC2rqcJ341xKQmuj7JYzT9szsuIIzI4zOm3cf9IIglRXVWCuWvELJs8qmRNW19dzg==",
"requires": {
"prop-types": "^15.7.2"
}
},
"@colors/colors": { "@colors/colors": {
"version": "1.5.0", "version": "1.5.0",
"resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
...@@ -20846,6 +20925,11 @@ ...@@ -20846,6 +20925,11 @@
"safe-buffer": "^5.0.1" "safe-buffer": "^5.0.1"
} }
}, },
"ckeditor5-build-strapi-wysiwyg": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ckeditor5-build-strapi-wysiwyg/-/ckeditor5-build-strapi-wysiwyg-2.1.1.tgz",
"integrity": "sha512-Mma+bcVUZ8xH+PEHoB8FroMPocIgs+6Fqg94Q4yqOYI+xXRWAds3GzY8SsZC43Dlo9NgN72mWP4W8cZ0xLUIow=="
},
"class-utils": { "class-utils": {
"version": "0.3.6", "version": "0.3.6",
"resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
...@@ -27616,6 +27700,40 @@ ...@@ -27616,6 +27700,40 @@
"resolved": "https://registry.npmjs.org/std-env/-/std-env-3.2.1.tgz", "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.2.1.tgz",
"integrity": "sha512-D/uYFWkI/31OrnKmXZqGAGK5GbQRPp/BWA1nuITcc6ICblhhuQUPHS5E2GSCVS7Hwhf4ciq8qsATwBUxv+lI6w==" "integrity": "sha512-D/uYFWkI/31OrnKmXZqGAGK5GbQRPp/BWA1nuITcc6ICblhhuQUPHS5E2GSCVS7Hwhf4ciq8qsATwBUxv+lI6w=="
}, },
"strapi-plugin-ckeditor5": {
"version": "2.1.1-rc.1",
"resolved": "https://registry.npmjs.org/strapi-plugin-ckeditor5/-/strapi-plugin-ckeditor5-2.1.1-rc.1.tgz",
"integrity": "sha512-8bFcSn6Gp5NKgIuT/+Q2MT7grxWJ5un1ckuyTgH/7MyuBAbUTszUsma4hzd0yXo9ZXr+mfYsaLI8pXmrSlWOvA==",
"requires": {
"@ckeditor/ckeditor5-react": "^4.0.0",
"@strapi/design-system": "^0.0.1-alpha.70",
"@strapi/helper-plugin": "^4.1.5",
"ckeditor5-build-strapi-wysiwyg": "^2.1.1",
"react": "^17.0.2",
"react-dom": "^17.0.2"
},
"dependencies": {
"@strapi/design-system": {
"version": "0.0.1-alpha.79",
"resolved": "https://registry.npmjs.org/@strapi/design-system/-/design-system-0.0.1-alpha.79.tgz",
"integrity": "sha512-o/F55Qjwao1HkqKcL8ovQ280QijJH8dLfzP+t3XMNL5Ihh3HBD2wcMS6dOsrnNDGdDE0LWQfG8bDbLPmWHmk1A==",
"requires": {
"@internationalized/number": "^3.0.2",
"compute-scroll-into-view": "^1.0.17",
"prop-types": "^15.7.2"
}
},
"@strapi/icons": {
"version": "0.0.1-alpha.79",
"resolved": "https://registry.npmjs.org/@strapi/icons/-/icons-0.0.1-alpha.79.tgz",
"integrity": "sha512-mIPzpwOir92939rSRuRS22GLWFpLfQDyoK0vMZUsGD7uujNnRon//TUa9DJTjTHjdEjRwWO60JbJOePgJ+2cvg==",
"peer": true,
"requires": {
"rimraf": "^3.0.2"
}
}
}
},
"stream-browserify": { "stream-browserify": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz",
...@@ -14,7 +14,8 @@ ...@@ -14,7 +14,8 @@
"@strapi/plugin-users-permissions": "4.3.6", "@strapi/plugin-users-permissions": "4.3.6",
"@strapi/strapi": "4.3.6", "@strapi/strapi": "4.3.6",
"better-sqlite3": "7.4.6", "better-sqlite3": "7.4.6",
"pg": "^8.8.0" "pg": "^8.8.0",
"strapi-plugin-ckeditor5": "^2.1.1-rc.1"
}, },
"author": { "author": {
"name": "A Strapi developer" "name": "A Strapi developer"
......
...@@ -981,6 +981,13 @@ ...@@ -981,6 +981,13 @@
dependencies: dependencies:
"@ucast/mongo2js" "^1.3.0" "@ucast/mongo2js" "^1.3.0"
"@ckeditor/ckeditor5-react@^4.0.0":
"integrity" "sha512-5qKZn8EVBeEYzmDrgpq31dC2rqcJ341xKQmuj7JYzT9szsuIIzI4zOm3cf9IIglRXVWCuWvELJs8qmRNW19dzg=="
"resolved" "https://registry.npmjs.org/@ckeditor/ckeditor5-react/-/ckeditor5-react-4.0.1.tgz"
"version" "4.0.1"
dependencies:
"prop-types" "^15.7.2"
"@colors/colors@1.5.0": "@colors/colors@1.5.0":
"integrity" "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==" "integrity" "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ=="
"resolved" "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz" "resolved" "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz"
...@@ -1242,7 +1249,7 @@ ...@@ -1242,7 +1249,7 @@
dependencies: dependencies:
"prop-types" "^15.8.1" "prop-types" "^15.8.1"
"@internationalized/number@^3.1.1": "@internationalized/number@^3.0.2", "@internationalized/number@^3.1.1":
"integrity" "sha512-dBxCQKIxvsZvW2IBt3KsqrCfaw2nV6o6a8xsloJn/hjW0ayeyhKuiiMtTwW3/WGNPP7ZRyDbtuiUEjMwif1ENQ==" "integrity" "sha512-dBxCQKIxvsZvW2IBt3KsqrCfaw2nV6o6a8xsloJn/hjW0ayeyhKuiiMtTwW3/WGNPP7ZRyDbtuiUEjMwif1ENQ=="
"resolved" "https://registry.npmjs.org/@internationalized/number/-/number-3.1.1.tgz" "resolved" "https://registry.npmjs.org/@internationalized/number/-/number-3.1.1.tgz"
"version" "3.1.1" "version" "3.1.1"
...@@ -1587,6 +1594,15 @@ ...@@ -1587,6 +1594,15 @@
"lodash" "4.17.21" "lodash" "4.17.21"
"umzug" "3.1.1" "umzug" "3.1.1"
"@strapi/design-system@^0.0.1-alpha.70":
"integrity" "sha512-o/F55Qjwao1HkqKcL8ovQ280QijJH8dLfzP+t3XMNL5Ihh3HBD2wcMS6dOsrnNDGdDE0LWQfG8bDbLPmWHmk1A=="
"resolved" "https://registry.npmjs.org/@strapi/design-system/-/design-system-0.0.1-alpha.79.tgz"
"version" "0.0.1-alpha.79"
dependencies:
"@internationalized/number" "^3.0.2"
"compute-scroll-into-view" "^1.0.17"
"prop-types" "^15.7.2"
"@strapi/design-system@1.2.1": "@strapi/design-system@1.2.1":
"integrity" "sha512-Jrlk3xzwM+Cskt1hjgYy0MwN0NQ7lramBoS6lAvHW1AFOGv2vnshU+jcZNXtIYU1N7/Xjko4oimBWXxXry0g/Q==" "integrity" "sha512-Jrlk3xzwM+Cskt1hjgYy0MwN0NQ7lramBoS6lAvHW1AFOGv2vnshU+jcZNXtIYU1N7/Xjko4oimBWXxXry0g/Q=="
"resolved" "https://registry.npmjs.org/@strapi/design-system/-/design-system-1.2.1.tgz" "resolved" "https://registry.npmjs.org/@strapi/design-system/-/design-system-1.2.1.tgz"
...@@ -1628,7 +1644,7 @@ ...@@ -1628,7 +1644,7 @@
"plop" "2.7.6" "plop" "2.7.6"
"pluralize" "8.0.0" "pluralize" "8.0.0"
"@strapi/helper-plugin@4.3.6": "@strapi/helper-plugin@^4.1.5", "@strapi/helper-plugin@4.3.6":
"integrity" "sha512-oa4lh2jXdWy4K59MjWWACkJG6DDNjRq8y1RW/eXkY/tef3fVlCtliTEE+gEq6KFN0Er98fKVvzW+LdnO4CPbzA==" "integrity" "sha512-oa4lh2jXdWy4K59MjWWACkJG6DDNjRq8y1RW/eXkY/tef3fVlCtliTEE+gEq6KFN0Er98fKVvzW+LdnO4CPbzA=="
"resolved" "https://registry.npmjs.org/@strapi/helper-plugin/-/helper-plugin-4.3.6.tgz" "resolved" "https://registry.npmjs.org/@strapi/helper-plugin/-/helper-plugin-4.3.6.tgz"
"version" "4.3.6" "version" "4.3.6"
...@@ -1656,6 +1672,13 @@ ...@@ -1656,6 +1672,13 @@
"styled-components" "5.3.3" "styled-components" "5.3.3"
"whatwg-fetch" "^3.6.2" "whatwg-fetch" "^3.6.2"
"@strapi/icons@^0.0.1-alpha.73":
"integrity" "sha512-mIPzpwOir92939rSRuRS22GLWFpLfQDyoK0vMZUsGD7uujNnRon//TUa9DJTjTHjdEjRwWO60JbJOePgJ+2cvg=="
"resolved" "https://registry.npmjs.org/@strapi/icons/-/icons-0.0.1-alpha.79.tgz"
"version" "0.0.1-alpha.79"
dependencies:
"rimraf" "^3.0.2"
"@strapi/icons@^1.2.1-beta.0", "@strapi/icons@1.2.1": "@strapi/icons@^1.2.1-beta.0", "@strapi/icons@1.2.1":
"integrity" "sha512-MJ3GAHfsKwviR/ZxfCs7AA2uZ4nZ7It9NT9JTUOatR3H0ehG8TIh1ky7NgwN26KPbqBWHqXd1zSb/Wbpo5KqVQ==" "integrity" "sha512-MJ3GAHfsKwviR/ZxfCs7AA2uZ4nZ7It9NT9JTUOatR3H0ehG8TIh1ky7NgwN26KPbqBWHqXd1zSb/Wbpo5KqVQ=="
"resolved" "https://registry.npmjs.org/@strapi/icons/-/icons-1.2.1.tgz" "resolved" "https://registry.npmjs.org/@strapi/icons/-/icons-1.2.1.tgz"
...@@ -3250,6 +3273,11 @@ ...@@ -3250,6 +3273,11 @@
"inherits" "^2.0.1" "inherits" "^2.0.1"
"safe-buffer" "^5.0.1" "safe-buffer" "^5.0.1"
"ckeditor5-build-strapi-wysiwyg@^2.1.1":
"integrity" "sha512-Mma+bcVUZ8xH+PEHoB8FroMPocIgs+6Fqg94Q4yqOYI+xXRWAds3GzY8SsZC43Dlo9NgN72mWP4W8cZ0xLUIow=="
"resolved" "https://registry.npmjs.org/ckeditor5-build-strapi-wysiwyg/-/ckeditor5-build-strapi-wysiwyg-2.1.1.tgz"
"version" "2.1.1"
"class-utils@^0.3.5": "class-utils@^0.3.5":
"integrity" "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==" "integrity" "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg=="
"resolved" "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz" "resolved" "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz"
...@@ -8244,7 +8272,7 @@ ...@@ -8244,7 +8272,7 @@
"@babel/runtime" "^7.0.0" "@babel/runtime" "^7.0.0"
"memoize-one" ">=3.1.1 <6" "memoize-one" ">=3.1.1 <6"
"react@^0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0", "react@^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react@^15.3.0 || 16 || 17 || 18", "react@^16.3.0 || ^17.0.0", "react@^16.3.0 || ^17.0.0 || ^18.0.0", "react@^16.3.0 || 17 || 18", "react@^16.8.0 || ^17.0.0", "react@^16.8.3 || ^17 || ^18", "react@^17.0.1", "react@^17.0.2", "react@>= 16.14", "react@>= 16.8.0", "react@>=15", "react@>=16.13.1", "react@>=16.3", "react@>=16.3.0", "react@>=16.6.0", "react@>=16.8.0", "react@17.0.2": "react@^0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0", "react@^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react@^15.3.0 || 16 || 17 || 18", "react@^16.13.1 || ^17.0.0 || ^18.0.0", "react@^16.3.0 || ^17.0.0", "react@^16.3.0 || ^17.0.0 || ^18.0.0", "react@^16.3.0 || 17 || 18", "react@^16.8.0 || ^17.0.0", "react@^16.8.3 || ^17 || ^18", "react@^17.0.1", "react@^17.0.2", "react@>= 16.14", "react@>= 16.8.0", "react@>=15", "react@>=16.13.1", "react@>=16.3", "react@>=16.3.0", "react@>=16.6.0", "react@>=16.8.0", "react@17.0.2":
"integrity" "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==" "integrity" "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA=="
"resolved" "https://registry.npmjs.org/react/-/react-17.0.2.tgz" "resolved" "https://registry.npmjs.org/react/-/react-17.0.2.tgz"
"version" "17.0.2" "version" "17.0.2"
...@@ -9202,6 +9230,18 @@ ...@@ -9202,6 +9230,18 @@
"resolved" "https://registry.npmjs.org/std-env/-/std-env-3.2.1.tgz" "resolved" "https://registry.npmjs.org/std-env/-/std-env-3.2.1.tgz"
"version" "3.2.1" "version" "3.2.1"
"strapi-plugin-ckeditor5@^2.1.1-rc.1":
"integrity" "sha512-8bFcSn6Gp5NKgIuT/+Q2MT7grxWJ5un1ckuyTgH/7MyuBAbUTszUsma4hzd0yXo9ZXr+mfYsaLI8pXmrSlWOvA=="
"resolved" "https://registry.npmjs.org/strapi-plugin-ckeditor5/-/strapi-plugin-ckeditor5-2.1.1-rc.1.tgz"
"version" "2.1.1-rc.1"
dependencies:
"@ckeditor/ckeditor5-react" "^4.0.0"
"@strapi/design-system" "^0.0.1-alpha.70"
"@strapi/helper-plugin" "^4.1.5"
"ckeditor5-build-strapi-wysiwyg" "^2.1.1"
"react" "^17.0.2"
"react-dom" "^17.0.2"
"stream-browserify@^3.0.0": "stream-browserify@^3.0.0":
"integrity" "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==" "integrity" "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA=="
"resolved" "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz" "resolved" "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz"
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!