Skip to content

Commit

Permalink
update to react-widgets 5.0 final and other minor upgrades
Browse files Browse the repository at this point in the history
  • Loading branch information
olmobrutall committed Mar 31, 2021
1 parent ba3aeed commit f85f1d7
Show file tree
Hide file tree
Showing 14 changed files with 252 additions and 131 deletions.
8 changes: 0 additions & 8 deletions Signum.Entities/EnumMessages.cs
Original file line number Diff line number Diff line change
Expand Up @@ -395,8 +395,6 @@ public enum JavascriptMessage

[Description("Date")]
Date,
[Description("Time")]
Time,
}

//https://github.com/jquense/react-widgets/blob/5d4985c6dac0df34b86c7d8ad311ff97066977ab/packages/react-widgets/src/messages.tsx#L35
Expand All @@ -412,14 +410,8 @@ public enum ReactWidgetsMessage
MoveForward,
[Description("Select date")]
DateButton,
[Description("Select time")]
TimeButton,
[Description("open combobox")]
OpenCombobox,
[Description("open dropdown")]
OpenDropdown,
[Description("")]
Placeholder,
[Description("")]
FilterPlaceholder,
[Description("There are no items in this list")]
Expand Down
7 changes: 2 additions & 5 deletions Signum.React/Scripts/ConfigureReactWidgets.tsx
Original file line number Diff line number Diff line change
@@ -1,20 +1,17 @@
import * as React from 'react';
import { DateTime, Settings } from 'luxon';
import * as ReactWidgets from 'react-widgets';
import { UserProvidedMessages } from 'react-widgets/lib/messages';
import { UserProvidedMessages } from 'react-widgets/cjs/messages';
import { ReactWidgetsMessage } from './Signum.Entities';
import { NumberLocalizer } from 'react-widgets/lib/IntlLocalizer';
import { NumberLocalizer } from 'react-widgets/cjs/IntlLocalizer';

export function getMessages(): UserProvidedMessages{
return ({
moveToday: ReactWidgetsMessage.MoveToday.niceToString(),
moveBack: ReactWidgetsMessage.MoveBack.niceToString(),
moveForward: ReactWidgetsMessage.MoveForward.niceToString(),
dateButton: ReactWidgetsMessage.DateButton.niceToString(),
timeButton: ReactWidgetsMessage.TimeButton.niceToString(),
openCombobox: ReactWidgetsMessage.OpenCombobox.niceToString(),
openDropdown: ReactWidgetsMessage.OpenDropdown.niceToString(),
placeholder: ReactWidgetsMessage.Placeholder.niceToString(),
emptyList: ReactWidgetsMessage.EmptyList.niceToString(),
emptyFilter: ReactWidgetsMessage.EmptyFilter.niceToString(),
createOption: (_value, searchTerm) =>
Expand Down
2 changes: 1 addition & 1 deletion Signum.React/Scripts/Lines/EntityCombo.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import { FormControlReadonly } from './FormControlReadonly'
import { classes } from '../Globals';
import { useController } from './LineBase'
import { useMounted } from '../Hooks'
import { DropdownList } from 'react-widgets/lib'
import { DropdownList } from 'react-widgets'


export interface EntityComboProps extends EntityBaseProps {
Expand Down
8 changes: 4 additions & 4 deletions Signum.React/Scripts/Lines/ValueLine.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
import * as React from 'react'
import { DateTime, Duration, DurationObjectUnits } from 'luxon'
import { DateTimePicker, DatePicker, DropdownList } from 'react-widgets'
import { CalendarProps } from 'react-widgets/lib/Calendar'
import { CalendarProps } from 'react-widgets/cjs/Calendar'
import { Dic, addClass, classes } from '../Globals'
import { MemberInfo, getTypeInfo, TypeReference, toLuxonFormat, toDurationFormat, toNumberFormat, isTypeEnum, durationToString, TypeInfo, parseDuration } from '../Reflection'
import { LineBaseController, LineBaseProps, useController } from '../Lines/LineBase'
import { FormGroup } from '../Lines/FormGroup'
import { FormControlReadonly } from '../Lines/FormControlReadonly'
import { BooleanEnum, JavascriptMessage } from '../Signum.Entities'
import TextArea from '../Components/TextArea';
import 'react-widgets/dist/css/react-widgets.css';
import { KeyCodes } from '../Components/Basic';
import { format } from 'd3';
import { isPrefix, QueryToken } from '../FindOptions'
Expand Down Expand Up @@ -336,7 +335,8 @@ function internalComboBox(vl: ValueLineController) {
<FormGroup ctx={s.ctx} labelText={s.labelText} helpText={s.helpText} htmlAttributes={{ ...vl.baseHtmlAttributes(), ...s.formGroupHtmlAttributes }} labelHtmlAttributes={s.labelHtmlAttributes}>
{vl.withItemGroup(
<DropdownList className={addClass(vl.props.valueHtmlAttributes, classes(s.ctx.formControlClass, vl.mandatoryClass))} data={optionItems} onChange={handleOptionItem} value={oi}
filter="contains"
filter={false}
autoComplete="off"
dataKey="value"
textField="label"
renderValue={a => vl.props.onRenderComboBoxItem!(a.item)}
Expand Down Expand Up @@ -698,7 +698,7 @@ ValueLineRenderers.renderers["DateTime" as ValueLineType] = (vl) => {
valueDisplayFormat={luxonFormat}
includeTime={showTime}
inputProps={htmlAttributes as any} placeholder={htmlAttributes.placeholder}
messages={{ dateButton: JavascriptMessage.Date.niceToString(), timeButton: JavascriptMessage.Time.niceToString() }}
messages={{ dateButton: JavascriptMessage.Date.niceToString() }}
min={s.minDate}
max={s.maxDate}
calendarProps={s.calendarProps}
Expand Down
1 change: 0 additions & 1 deletion Signum.React/Scripts/SearchControl/QueryTokenBuilder.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import * as React from 'react'
import 'react-widgets/dist/css/react-widgets.css';
import { areEqual, classes } from '../Globals'
import * as Finder from '../Finder'
import { QueryToken, SubTokensOptions, getTokenParents, isPrefix } from '../FindOptions'
Expand Down
2 changes: 1 addition & 1 deletion Signum.React/Scripts/SearchControl/SystemTimeEditor.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ export default class SystemTimeEditor extends React.Component<SystemTimeEditorPr
return (
<div className="rw-widget-sm ml-1" style={{ width: "230px" }}>
<DateTimePicker value={m?.toJSDate()} onChange={handleDatePickerOnChange}
valueEditFormat={luxonFormat} valueDisplayFormat={luxonFormat} includeTime={true} messages={{ dateButton: JavascriptMessage.Date.niceToString(), timeButton: JavascriptMessage.Time.niceToString() }} />
valueEditFormat={luxonFormat} valueDisplayFormat={luxonFormat} includeTime={true} messages={{ dateButton: JavascriptMessage.Date.niceToString() }} />
</div>
);
}
Expand Down
4 changes: 0 additions & 4 deletions Signum.React/Scripts/Signum.Entities.ts
Original file line number Diff line number Diff line change
Expand Up @@ -340,7 +340,6 @@ export module JavascriptMessage {
export const showPeriod = new MessageKey("JavascriptMessage", "showPeriod");
export const showPreviousOperation = new MessageKey("JavascriptMessage", "showPreviousOperation");
export const Date = new MessageKey("JavascriptMessage", "Date");
export const Time = new MessageKey("JavascriptMessage", "Time");
}

export module LiteMessage {
Expand Down Expand Up @@ -438,10 +437,7 @@ export module ReactWidgetsMessage {
export const MoveBack = new MessageKey("ReactWidgetsMessage", "MoveBack");
export const MoveForward = new MessageKey("ReactWidgetsMessage", "MoveForward");
export const DateButton = new MessageKey("ReactWidgetsMessage", "DateButton");
export const TimeButton = new MessageKey("ReactWidgetsMessage", "TimeButton");
export const OpenCombobox = new MessageKey("ReactWidgetsMessage", "OpenCombobox");
export const OpenDropdown = new MessageKey("ReactWidgetsMessage", "OpenDropdown");
export const Placeholder = new MessageKey("ReactWidgetsMessage", "Placeholder");
export const FilterPlaceholder = new MessageKey("ReactWidgetsMessage", "FilterPlaceholder");
export const EmptyList = new MessageKey("ReactWidgetsMessage", "EmptyList");
export const EmptyFilter = new MessageKey("ReactWidgetsMessage", "EmptyFilter");
Expand Down
1 change: 0 additions & 1 deletion Signum.React/Signum.React.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<TypeScriptBuildMode>true</TypeScriptBuildMode>
<Nullable>enable</Nullable>
<WarningsAsErrors>nullable</WarningsAsErrors>
<OutputType>Library</OutputType>
Expand Down
34 changes: 17 additions & 17 deletions Signum.React/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,30 +21,30 @@
},
"homepage": "https://github.com/signumsoftware/framework#readme",
"resolutions": {
"@types/react": "17.0.0",
"@types/history": "4.7.7"
"@types/react": "17.0.3",
"@types/history": "4.7.8"
},
"dependencies": {
"@fortawesome/fontawesome-svg-core": "1.2.32",
"@fortawesome/fontawesome-svg-core": "1.2.35",
"@fortawesome/free-brands-svg-icons": "5.15.1",
"@fortawesome/free-regular-svg-icons": "5.15.1",
"@fortawesome/free-solid-svg-icons": "5.15.1",
"@fortawesome/react-fontawesome": "0.1.13",
"@types/d3": "6.2.0",
"@fortawesome/free-regular-svg-icons": "5.15.3",
"@fortawesome/free-solid-svg-icons": "5.15.3",
"@fortawesome/react-fontawesome": "0.1.14",
"@types/d3": "6.3.0",
"@types/d3-scale-chromatic": "2.0.0",
"@types/history": "4.7.8",
"@types/luxon": "1.25.0",
"@types/luxon": "1.26.2",
"@types/prop-types": "15.7.3",
"@types/react": "17.0.0",
"@types/react-dom": "17.0.0",
"@types/react-router": "5.1.8",
"@types/react-router-dom": "5.1.6",
"@types/react-transition-group": "4.4.0",
"react-widgets": "5.0.0-beta.22",
"@types/react": "17.0.3",
"@types/react-dom": "17.0.3",
"@types/react-router": "5.1.13",
"@types/react-router-dom": "5.1.7",
"@types/react-transition-group": "4.4.1",
"react-widgets": "5.0.0",
"luxon": "1.25.0",
"popper.js": "1.16.1",
"react": "17.0.1",
"react-dom": "17.0.1",
"react-bootstrap": "1.4.0"
"react": "17.0.2",
"react-dom": "17.0.2",
"react-bootstrap": "1.5.2"
}
}
Loading

2 comments on commit f85f1d7

@olmobrutall
Copy link
Collaborator Author

@olmobrutall olmobrutall commented on f85f1d7 Mar 31, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Update to React Widgets 5.0.0 final

Jason Quense has made a final push and published React Widgets 5 https://twitter.com/monasticpanic/status/1377075115272327170 🥳

This closes many open issues, including:
jquense/react-widgets#915 (comment)
jquense/react-widgets#993 (comment)
jquense/react-widgets#915 (comment)

This commit updates the framework to use react-widgets: 5.0.0 and also updates some other NPM dependencies.

The commit also adds a Upgrade_20210331_ReactWidgets5 to update your application. Remember to run yarn install after the upgrade.

@MehdyKarimpour
Copy link
Contributor

@MehdyKarimpour MehdyKarimpour commented on f85f1d7 Mar 31, 2021 via email

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.