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": {
|
2020-07-03 20:47:44 +08:00
|
|
|
"@babel/preset-typescript": "^7.10.1",
|
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
|
|
|
"@types/mithril": "^2.0.3",
|
2019-03-04 03:27:14 +08:00
|
|
|
"bootstrap": "^3.4.1",
|
2018-06-20 11:50:31 +08:00
|
|
|
"classnames": "^2.2.5",
|
|
|
|
"color-thief-browser": "^2.0.2",
|
2020-07-01 08:33:00 +08:00
|
|
|
"dayjs": "^1.8.28",
|
2018-06-20 11:50:31 +08:00
|
|
|
"expose-loader": "^0.7.5",
|
2018-11-21 16:01:24 +08:00
|
|
|
"flarum-webpack-config": "0.1.0-beta.10",
|
2020-10-14 16:11:34 +08:00
|
|
|
"jquery": "^3.5.1",
|
2018-06-20 11:50:31 +08:00
|
|
|
"jquery.hotkeys": "^0.1.0",
|
2019-07-11 15:21:17 +08:00
|
|
|
"lodash-es": "^4.17.14",
|
2018-06-20 11:50:31 +08:00
|
|
|
"m.attrs.bidi": "github:tobscure/m.attrs.bidi",
|
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",
|
2020-05-01 17:52:26 +08:00
|
|
|
"webpack": "^4.43.0",
|
|
|
|
"webpack-cli": "^3.3.11",
|
2018-08-25 18:48:59 +08:00
|
|
|
"webpack-merge": "^4.1.4"
|
2018-06-20 11:50:31 +08:00
|
|
|
},
|
2020-03-07 07:56:41 +08:00
|
|
|
"devDependencies": {
|
2020-04-17 16:38:45 +08:00
|
|
|
"husky": "^4.2.5",
|
2020-03-07 07:56:41 +08:00
|
|
|
"prettier": "2.0.2"
|
|
|
|
},
|
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",
|
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
|
|
|
}
|
|
|
|
}
|