2018-06-20 11:50:31 +08:00
|
|
|
{
|
2018-11-21 16:01:24 +08:00
|
|
|
"private": true,
|
2018-06-20 11:50:31 +08:00
|
|
|
"name": "@flarum/core",
|
|
|
|
"dependencies": {
|
2021-05-01 00:44:39 +08:00
|
|
|
"@askvortsov/rich-icu-message-formatter": "^0.1.0",
|
|
|
|
"@ultraq/icu-message-formatter": "^0.10.0",
|
2019-03-04 03:27:14 +08:00
|
|
|
"bootstrap": "^3.4.1",
|
2021-04-05 23:27:16 +08:00
|
|
|
"clsx": "^1.1.1",
|
2018-06-20 11:50:31 +08:00
|
|
|
"color-thief-browser": "^2.0.2",
|
2021-04-08 19:35:10 +08:00
|
|
|
"dayjs": "^1.10.4",
|
|
|
|
"expose-loader": "^1.0.3",
|
|
|
|
"jquery": "^3.6.0",
|
2018-06-20 11:50:31 +08:00
|
|
|
"jquery.hotkeys": "^0.1.0",
|
2021-04-08 19:35:10 +08:00
|
|
|
"lodash-es": "^4.17.21",
|
Mithril 2 update (#2255)
* Update frontend to Mithril 2
- Update Mithril version to v2.0.4
- Add Typescript typings for Mithril
- Rename "props" to "attrs"; "initProps" to "initAttrs"; "m.prop" to "m.stream"; "m.withAttr" to "utils/withAttr".
- Use Mithril 2's new lifecycle hooks
- SubtreeRetainer has been rewritten to be more useful for the new system
- Utils for forcing page re-initializations have been added (force attr in links, setRouteWithForcedRefresh util)
- Other mechanical changes, following the upgrade guide
- Remove some of the custom stuff in our Component base class
- Introduce "fragments" for non-components that control their own DOM
- Remove Mithril patches, introduce a few new ones (route attrs in <a>;
- Redesign AlertManagerState `show` with 3 overloads: `show(children)`, `show(attrs, children)`, `show(componentClass, attrs, children)`
- The `affixedSidebar` util has been replaced with an `AffixedSidebar` component
Challenges:
- `children` and `tag` are now reserved, and can not be used as attr names
- Behavior of links to current page changed in Mithril. If moving to a page that is handled by the same component, the page component WILL NOT be re-initialized by default. Additional code to keep track of the current url is needed (See IndexPage, DiscussionPage, and UserPage for examples)
- Native Promise rejections are shown on console when not handled
- Instances of components can no longer be stored. The state pattern should be used instead.
Refs #1821.
Co-authored-by: Alexander Skvortsov <sasha.skvortsov109@gmail.com>
Co-authored-by: Matthew Kilgore <tankerkiller125@gmail.com>
Co-authored-by: Franz Liedke <franz@develophp.org>
2020-09-24 10:40:37 +08:00
|
|
|
"mithril": "^2.0.4",
|
2018-06-20 11:50:31 +08:00
|
|
|
"punycode": "^2.1.1",
|
|
|
|
"spin.js": "^3.1.0",
|
2021-04-08 19:35:10 +08:00
|
|
|
"textarea-caret": "^3.1.0"
|
2018-06-20 11:50:31 +08:00
|
|
|
},
|
2020-03-07 07:56:41 +08:00
|
|
|
"devDependencies": {
|
2021-04-08 19:35:10 +08:00
|
|
|
"@babel/preset-typescript": "^7.13.0",
|
|
|
|
"@types/jquery": "^3.5.5",
|
|
|
|
"@types/lodash-es": "^4.17.4",
|
|
|
|
"@types/mithril": "^2.0.7",
|
|
|
|
"@types/punycode": "^2.1.0",
|
|
|
|
"@types/textarea-caret": "^3.0.0",
|
2021-03-17 22:54:42 +08:00
|
|
|
"bundlewatch": "^0.3.2",
|
2021-04-10 22:00:48 +08:00
|
|
|
"cross-env": "^7.0.3",
|
2021-04-08 19:35:10 +08:00
|
|
|
"flarum-webpack-config": "0.1.0-beta.10",
|
|
|
|
"husky": "^4.3.8",
|
|
|
|
"prettier": "^2.2.1",
|
|
|
|
"webpack": "^4.46.0",
|
2021-04-10 22:00:48 +08:00
|
|
|
"webpack-bundle-analyzer": "^4.4.0",
|
2021-04-08 19:35:10 +08:00
|
|
|
"webpack-cli": "^3.3.12",
|
|
|
|
"webpack-merge": "^4.2.2"
|
2020-03-07 07:56:41 +08:00
|
|
|
},
|
2018-06-20 11:50:31 +08:00
|
|
|
"scripts": {
|
2018-11-21 16:01:54 +08:00
|
|
|
"dev": "webpack --mode development --watch",
|
2020-03-28 07:20:29 +08:00
|
|
|
"build": "webpack --mode production",
|
2021-04-10 22:00:48 +08:00
|
|
|
"analyze": "cross-env ANALYZER=true npm run build",
|
2020-04-17 17:00:52 +08:00
|
|
|
"format": "prettier --write src",
|
|
|
|
"format-check": "prettier --check src"
|
2020-04-17 16:38:45 +08:00
|
|
|
},
|
|
|
|
"husky": {
|
|
|
|
"hooks": {
|
|
|
|
"pre-commit": "npm run format"
|
|
|
|
}
|
2018-06-20 11:50:31 +08:00
|
|
|
}
|
|
|
|
}
|