Skip to content

Commit

Permalink
4.8.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
enact-bot committed Feb 7, 2024
2 parents be67cfe + a30b8ff commit dd08076
Show file tree
Hide file tree
Showing 45 changed files with 25,580 additions and 16,977 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@

The following is a curated list of changes in the Enact project, newest changes on the top.

## [4.8.0] - 2024-02-08

No significant changes.

## [4.7.9] - 2023-12-08

No significant changes.
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ That command will `npm link` the packages into global NPM userspace, for use in
Unless otherwise specified, all content, including all source code files and
documentation files in this repository are:

Copyright (c) 2012-2023 LG Electronics
Copyright (c) 2012-2024 LG Electronics

Unless otherwise specified or set forth in the NOTICE file, all content,
including all source code files and documentation files in this repository are:
Expand Down
11 changes: 8 additions & 3 deletions docs/best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ application.
As part of the release of an application, use `npm shrinkwrap` (<a href="https://docs.npmjs.com/cli/shrinkwrap">https://docs.npmjs.com/cli/shrinkwrap</a>)
to lock the versions of the application's dependencies (and all of those dependencies' dependencies, and so on).

> <a href="http://javascript.tutorialhorizon.com/2015/03/21/what-is-npm-shrinkwrap-and-when-is-it-needed/">http://javascript.tutorialhorizon.com/2015/03/21/what-is-npm-shrinkwrap-and-when-is-it-needed/</a>
> <a href="https://tutorialhorizon.com/javascript/what-is-npm-shrinkwrap-and-when-is-it-needed/">https://tutorialhorizon.com/javascript/what-is-npm-shrinkwrap-and-when-is-it-needed/</a>
presents a brief article explaining why and when to use `npm shrinkwrap`.

## Code Conventions
Expand All @@ -38,15 +38,20 @@ Naming is hard. Property names should be adjectives, as they describe how a com
### Boolean

For a boolean property, its presence indicates `true` and its absence indicates `false`.
> `<MyComponent myBooleanProp />` // myBooleanProp === true; myOtherBooleanProp === false
```js
<MyComponent myBooleanProp /> // myBooleanProp === true; myOtherBooleanProp === false
```

Boolean properties should always have a `defaultValue` of `false`.  This may require renaming the prop to be a negative
(e.g. `noAnimation`).

### String

String properties do not need to be evaluated as an expression.
> `<MyComponent myStringProp="My String" />` // not `<MyComponent myStringProp={"My String"} />`
```js
<MyComponent myStringProp="My String" />
// not <MyComponent myStringProp={"My String"} />
```

## State Management

Expand Down
2 changes: 1 addition & 1 deletion docs/contributing/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,5 +73,5 @@ project. Please read this section carefully if you are interested in contributin
### Getting More Involved
If you'd like to become more than an occasional contributor, by all means let us know by dropping by
our [gitter channel](https://gitter.im/EnactJS/Lobby/~chat#share) and we'll figure out how to get
our [gitter channel](https://gitter.im/EnactJS/Lobby) and we'll figure out how to get
you more involved.
4 changes: 2 additions & 2 deletions docs/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ Describes what you want to see on the screen, such as a heading DOM element with
### event
React (and therefore Enact) uses `SyntheticEvents` to provide a cross-browser wrapper around native browser events. The `@enact/core/handle` module simplifies writing consistent handlers for components created with `kind()` or as ES6 classes where the event properties can be sourced differently.
#### See also
* [Synthetic Events - React](https://reactjs.org/docs/events.html)
* [Handling Events - React](https://reactjs.org/docs/handling-events.html)
* [Synthetic Events - React](https://react.dev/reference/react-dom/components/common)
* [Handling Events - React](https://react.dev/learn/responding-to-events)
* [enact/core/handle](../../modules/core/handle)

### higher-order component
Expand Down
6 changes: 3 additions & 3 deletions docs/migration/enact/migrating-to-enact-2.md
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,7 @@ const handleChange = () => {
```

### `ExpandableList`
`ExpandableList` now requires a unique key for `Object` type data. [Read about keys](https://reactjs.org/docs/lists-and-keys.html#keys)
`ExpandableList` now requires a unique key for `Object` type data. [Read about keys](https://react.dev/learn/rendering-lists#keeping-list-items-in-order-with-key)
for more information.

### `IconButton`
Expand Down Expand Up @@ -648,7 +648,7 @@ const MyContainer = SpotlightContainerDecorator(MyComponent);
## ui
### `Group`
`Group` now requires a unique key for `Object` type data. [Read about keys](https://reactjs.org/docs/lists-and-keys.html#keys)
`Group` now requires a unique key for `Object` type data. [Read about keys](https://react.dev/learn/rendering-lists#keeping-list-items-in-order-with-key)
for more information.
### `Holdable`
Expand All @@ -658,7 +658,7 @@ This component has been replaced by [`ui/Touchable`](../../../modules/ui/Touchab
This component has been replaced by [`ui/Touchable`](../../../modules/ui/Touchable/).
### `Repeater`
`Repeater` now requires a unique key for `Object` type data. [Read about keys](https://reactjs.org/docs/lists-and-keys.html#keys)
`Repeater` now requires a unique key for `Object` type data. [Read about keys](https://react.dev/learn/rendering-lists#keeping-list-items-in-order-with-key)
for more information.
### `Toggleable`
Expand Down
2 changes: 1 addition & 1 deletion docs/migration/enact/migrating-to-enact-4.5.md
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ Let's look at the example app from [here](https://github.com/enactjs/samples/tre
We have two panels, one with `Suspense`, one without. They both load the same list of images. On the first panel, where we have implemented `Suspense`, we can see that until the data is available, we display a skeleton page that has the exact visual structure of the page with placeholders for the lazy loading data. This offers a more pleasant UI experience. As opposed to it, on the second panel, where we haven't implemented `Suspense`, we can observe that it takes several seconds for content to show on the page. During this time user sees a blank page that might be confusing.
So far, we took around for key Concurrent Features of React 18, other than this, React 18 introduces new hooks like `useId`, `useDeferredValue`, etc.
If you want more information, please refer to [How to Upgrade to React 18](https://reactjs.org/blog/2022/03/08/react-18-upgrade-guide.html) and other great articles from the official [React Blog](https://reactjs.org/blog).
If you want more information, please refer to [How to Upgrade to React 18](https://reactjs.org/blog/2022/03/08/react-18-upgrade-guide.html) and other great articles from the official [React Blog](https://react.dev/blog).
### cli
Expand Down
4 changes: 2 additions & 2 deletions docs/migration/enyo/migrate-i18n.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ const MyIStringText = MyIString.toString();

**Previous:** The `updateLocale()` method of the `enyo/i18n` library could be invoked

**Current:** The `updateLocale()` method is available for any component whose ancestor is wrapped with the `I18nDecorator`, which provides this method as part of the [Context API](https://reactjs.org/docs/context.html). `I18nDecorator` provides easy access via the `I18nContextDecorator` HOC which can provide the locale, rtl state, and `updateLocale` method via props by specifying the `localeProp`, `rtlProp`, and `updateLocaleProp` configuration options, respectively.
**Current:** The `updateLocale()` method is available for any component whose ancestor is wrapped with the `I18nDecorator`, which provides this method as part of the [Context API](https://react.dev/learn/passing-data-deeply-with-context). `I18nDecorator` provides easy access via the `I18nContextDecorator` HOC which can provide the locale, rtl state, and `updateLocale` method via props by specifying the `localeProp`, `rtlProp`, and `updateLocaleProp` configuration options, respectively.

```js
import Button from '@enact/moonstone/Button';
Expand Down Expand Up @@ -78,7 +78,7 @@ const MyComponent = I18nContextDecorator(

**Previous:** Components could check the value of `this.rtl`

**Current:** The `rtl` state method is available for any component whose ancestor is wrapped with the `I18nDecorator`, which provides this value as part of the [Context API](https://reactjs.org/docs/context.html). `I18nDecorator` provides easy access via the `I18nContextDecorator` HOC which can provide the locale, rtl state, and `updateLocale` method via props by specifying the `localeProp`, `rtlProp`, and `updateLocaleProp` configuration options, respectively.
**Current:** The `rtl` state method is available for any component whose ancestor is wrapped with the `I18nDecorator`, which provides this value as part of the [Context API](https://react.dev/learn/passing-data-deeply-with-context). `I18nDecorator` provides easy access via the `I18nContextDecorator` HOC which can provide the locale, rtl state, and `updateLocale` method via props by specifying the `localeProp`, `rtlProp`, and `updateLocaleProp` configuration options, respectively.

```js
import Button from '@enact/moonstone/Button';
Expand Down
4 changes: 2 additions & 2 deletions docs/redux/redux-intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ Back in the days, we had [connect()](https://github.com/reduxjs/react-redux/blob

Also, we use [useDispatch()](https://github.com/reduxjs/react-redux/blob/master/docs/api/hooks.md#usedispatch) hook to dispatch actions. It gives you the store's `dispatch` method as its result so that you can call it with some `action` to dispatch.

Our components need access to the Redux store so they can subscribe to it. This can be cumbersome as your number of components grows and you have to manually pass store around. `react-redux` incorporates [context](https://reactjs.org/docs/context.html) in React and provides a [`<Provider />`](https://github.com/reduxjs/react-redux/blob/master/docs/api/Provider.md) component to make store available to all components without passings stores around by hand. You only need to use it once at the `render()` of root component.
Our components need access to the Redux store so they can subscribe to it. This can be cumbersome as your number of components grows and you have to manually pass store around. `react-redux` incorporates [context](https://react.dev/learn/passing-data-deeply-with-context) in React and provides a [`<Provider />`](https://github.com/reduxjs/react-redux/blob/master/docs/api/Provider.md) component to make store available to all components without passings stores around by hand. You only need to use it once at the `render()` of root component.

#### Example

Expand Down Expand Up @@ -297,4 +297,4 @@ Live Demo: [https://codesandbox.io/s/charming-burnell-92or5q?file=/src/App.js](h

[Official React Redux documentation](https://react-redux.js.org/tutorials/quick-start)

[Egghead tutorial - Getting Started with Redux](https://egghead.io/courses/getting-started-with-redux)
[Egghead tutorial - Fundamentals of Redux Course from Dan Abramov](https://egghead.io/courses/fundamentals-of-redux-course-from-dan-abramov-bd5cc867)
4 changes: 2 additions & 2 deletions docs/resources/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ The Enact framework is built atop React.

* [Official React documentation](https://react.dev/reference/react)
* [Official React tutorial](https://react.dev/learn/tutorial-tic-tac-toe)
* [Egghead tutorial - Start Using React to Build Web Applications](https://egghead.io/courses/react-fundamentals?utm_source=drip&utm_medium=email&utm_campaign=course-update-react-fundamentals)
* [Egghead tutorial - React](https://egghead.io/q?q=react)
* [Awesome React](https://github.com/enaqx/awesome-react) - a big collection of links (React and related tech)
* [Build with React](http://buildwithreact.com/tutorial) - a simple tutorial with inline editor
* [inflearn - React and Express](https://www.inflearn.com/course/react-%EA%B0%95%EC%A2%8C-velopert/) - Korean language course (has some Redux, too)
Expand All @@ -18,5 +18,5 @@ The Enact framework is built atop React.
The Enact framework team recommends the usage of Redux for state management of non-trivial applications.

* [Official Redux documentation](http://redux.js.org/)
* [Egghead tutorial - Getting Started with Redux](https://egghead.io/courses/getting-started-with-redux)
* [Egghead tutorial - Fundamentals of Redux Course from Dan Abramov](https://egghead.io/courses/fundamentals-of-redux-course-from-dan-abramov-bd5cc867)
* [Presentational and Container Components](https://medium.com/@dan_abramov/smart-and-dumb-components-7ca2f9a7c7d0#.6j9fz9g5j)
2 changes: 0 additions & 2 deletions docs/testing-components/unit-testing/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,6 @@ We use a dizzying number of tools to perform unit testing. A quick overview of

## Unit Testing

> If a video is more your style we have one here: [https://www.youtube.com/watch?v=DNAsXbnCV8w](https://www.youtube.com/watch?v=DNAsXbnCV8w)
Unit testing is the core of our testing platform. Unit testing only tests the smallest units of code. Typically a test
just tests a function/method. For Enact framework developers testing will also extend into component and virtual DOM testing.

Expand Down
13 changes: 4 additions & 9 deletions lerna.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,7 @@
{
"lerna": "4.0.0",
"version": "4.7.9",
"command": {
"bootstrap": {
"ci": false,
"npmClientArgs": [
"--no-package-lock"
]
}
}
"version": "4.8.0",
"packages": [
"packages/*"
]
}
Loading

0 comments on commit dd08076

Please sign in to comment.