A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/signumsoftware/framework/commit/7d0804c7c2ab4841d0985e42c3b5fa96b8f01780 below:

Merge remote-tracking branch 'origin/bootstrap5' · signumsoftware/framework@7d0804c · GitHub

Expand file treeCollapse file tree 130 files changed

+1183

-1018

lines changed Original file line number Diff line number Diff line change

@@ -49,10 +49,10 @@ public static void Start(SchemaBuilder sb)

49 49

if (count > 0)

50 50

{

51 51

Console.Write("The database ");

52 -

SafeConsole.WriteLineColor(ConsoleColor.White, Connector.Current.DatabaseName());

52 +

SafeConsole.WriteColor(ConsoleColor.Yellow, Connector.Current.DatabaseName());

53 53

Console.Write(" contains ");

54 -

SafeConsole.WriteLineColor(ConsoleColor.White, count.ToString());

55 -

Console.Write(" Sql Migrations!");

54 +

SafeConsole.WriteColor(ConsoleColor.Yellow, count.ToString());

55 +

Console.WriteLine(" Sql Migrations!");

56 56 57 57

if (SafeConsole.Ask("Do you want to create a new SQL Migration instead?"))

58 58

{

@@ -107,7 +107,7 @@ public static void EnsureMigrationTable<T>() where T : Entity

107 107

}

108 108 109 109

SafeConsole.WriteLineColor(ConsoleColor.White, "Table " + table.Name + " auto-generated...");

110 - 110 + 111 111

tr.Commit();

112 112

}

113 113

}

@@ -138,7 +138,7 @@ public static void EnsureMigrationTable<T>() where T : Entity

138 138

return null;

139 139

}

140 140

catch (Exception e)

141 -

{

141 +

{

142 142

Console.WriteLine();

143 143 144 144

SafeConsole.WriteColor(ConsoleColor.Red, e.GetType() + ": ");

Original file line number Diff line number Diff line change

@@ -25,9 +25,9 @@ public string? FileName

25 25 26 26

public EmailAttachmentType Type { get; set; }

27 27 28 - 28 + 29 29

public FileEmbedded File { get; set; }

30 30 31 31

[AutoExpressionField]

32 -

public override string ToString() => As.Expression(() => FileName ?? File.FileName);

32 +

public override string ToString() => As.Expression(() => FileName ?? (File == null ? "" : File.FileName));

33 33

}

Original file line number Diff line number Diff line change

@@ -146,7 +146,7 @@ function AlertDropdownImp(props: { checkForChangesEvery: number, keepRingingFor:

146 146

<>

147 147

<div className="nav-link sf-bell-container" onClick={handleOnToggle}>

148 148

<FontAwesomeIcon icon="bell" className={classes("sf-bell", ringing && "ringing", isOpen && "open", countResult && countResult.numAlerts > 0 && "active")} />

149 -

{countResult && countResult.numAlerts > 0 && <span className="badge badge-danger badge-pill sf-alerts-badge">{countResult.numAlerts}</span>}

149 +

{countResult && countResult.numAlerts > 0 && <span className="badge btn-danger badge-pill sf-alerts-badge">{countResult.numAlerts}</span>}

150 150

</div>

151 151

{isOpen && <div className="sf-alerts-toasts">

152 152

{alertsGroups == null ? <Toast> <Toast.Body>{JavascriptMessage.loading.niceToString()}</Toast.Body></Toast> :

@@ -164,7 +164,7 @@ function AlertDropdownImp(props: { checkForChangesEvery: number, keepRingingFor:

164 164

<Toast onClose={() => handleOnCloseAlerts(alerts!.map(a=>a))}>

165 165

<Toast.Header>

166 166

<strong >{AlertMessage._0SimilarAlerts.niceToString(alertsGroups.filter((a, i) => i >= showAlerts).sum(gr => gr.elements.length))}</strong>

167 -

<a href="#" className="mr-auto ml-auto" onClick={e => { e.preventDefault(); setShowAlert(a => a + 3); }}><small>{AlertMessage.ViewMore.niceToString()}</small></a>

167 +

<a href="#" className="me-auto ms-auto" onClick={e => { e.preventDefault(); setShowAlert(a => a + 3); }}><small>{AlertMessage.ViewMore.niceToString()}</small></a>

168 168

<small>{AlertMessage.CloseAll.niceToString()}</small>

169 169

</Toast.Header>

170 170

</Toast>

@@ -213,8 +213,8 @@ export function AlertToast(p: { alert: AlertEntity, onClose: (e: AlertEntity[])

213 213

return (

214 214

<Toast onClose={() => p.onClose([p.alert])} className={p.className}>

215 215

<Toast.Header>

216 -

{icon && <span className="mr-2">{icon}</span>}

217 -

<strong className="mr-auto">{AlertsClient.getTitle(p.alert.titleField, p.alert.alertType)}</strong>

216 +

{icon && <span className="me-2">{icon}</span>}

217 +

<strong className="me-auto">{AlertsClient.getTitle(p.alert.titleField, p.alert.alertType)}</strong>

218 218

<small>{DateTime.fromISO(p.alert.alertDate!).toRelative()}</small>

219 219

</Toast.Header>

220 220

<Toast.Body style={{ whiteSpace: "pre-wrap" }}>

@@ -242,9 +242,9 @@ export function AlertGroupToast(p: { alerts: Array<AlertEntity>, onClose: (e: Al

242 242

p.alerts.length > showAlerts &&

243 243

<Toast className="mt-0" onClose={() => p.onClose(p.alerts)}>

244 244

<Toast.Header>

245 -

{icon && <span className="mr-2">{icon}</span>}

245 +

{icon && <span className="me-2">{icon}</span>}

246 246

<strong >{AlertMessage._0SimilarAlerts.niceToString(p.alerts.length - showAlerts)}</strong>

247 -

<a href="#" className="mr-auto ml-auto" onClick={e => { e.preventDefault(); setShowAlert(a => a + 3); }}><small>{AlertMessage.ViewMore.niceToString()}</small></a>

247 +

<a href="#" className="me-auto ms-auto" onClick={e => { e.preventDefault(); setShowAlert(a => a + 3); }}><small>{AlertMessage.ViewMore.niceToString()}</small></a>

248 248

<small>{AlertMessage.CloseAll.niceToString()}</small>

249 249

</Toast.Header>

250 250

</Toast>

Original file line number Diff line number Diff line change

@@ -52,10 +52,10 @@ export function start(options: { routes: JSX.Element[], showAlerts?: (typeName:

52 52

}));

53 53 54 54

Operations.addSettings(new EntityOperationSettings(AlertOperation.Delay, {

55 -

onClick: (eoc) => chooseDate().then(d => d && eoc.defaultClick(d.toISO())).done(),

55 +

onClick: (eoc) => chooseDate().then(d => d && eoc.defaultClick(d.toISO())),

56 56

hideOnCanExecute: true,

57 -

contextual: { onClick: (coc) => chooseDate().then(d => d && coc.defaultContextualClick(d.toISO())).done() },

58 -

contextualFromMany: { onClick: (coc) => chooseDate().then(d => d && coc.defaultContextualClick(d.toISO())).done() },

57 +

contextual: { onClick: (coc) => chooseDate().then(d => d && coc.defaultContextualClick(d.toISO())) },

58 +

contextualFromMany: { onClick: (coc) => chooseDate().then(d => d && coc.defaultContextualClick(d.toISO())) },

59 59

}));

60 60 61 61

var cellFormatter = new Finder.CellFormatter((cell, ctx) => {

Original file line number Diff line number Diff line change

@@ -31,7 +31,7 @@ export function start(options: { routes: JSX.Element[] }) {

31 31

return (

32 32

{

33 33

order: -1,

34 -

button: <button className="btn btn-info ml-2"

34 +

button: <button className="btn btn-info ms-2"

35 35

onClick={e => {

36 36

e.preventDefault();

37 37

var promise = ValueLineModal.show({

Original file line number Diff line number Diff line change

@@ -41,15 +41,15 @@ export default function LoginDropdown(p: {

41 41

var extraButtons = p.extraButons && p.extraButons(user);

42 42 43 43

return (

44 -

<NavDropdown className="sf-login-dropdown" id="sfLoginDropdown" title={p.renderName ? p.renderName(user) : user.userName!} alignRight >

45 -

{pv && <NavDropdown.Item id="sf-auth-profile" onClick={handleProfileClick}><FontAwesomeIcon icon="user-edit" fixedWidth className="mr-2" /> {LoginAuthMessage.MyProfile.niceToString()}</NavDropdown.Item>}

44 +

<NavDropdown className="sf-login-dropdown" id="sfLoginDropdown" title={p.renderName ? p.renderName(user) : user.userName!} align="end">

45 +

{pv && <NavDropdown.Item id="sf-auth-profile" onClick={handleProfileClick}><FontAwesomeIcon icon="user-edit" fixedWidth className="me-2" /> {LoginAuthMessage.MyProfile.niceToString()}</NavDropdown.Item>}

46 46

{cpv && <LinkContainer to="~/auth/changePassword">

47 -

<NavDropdown.Item><FontAwesomeIcon icon="key" fixedWidth className="mr-2" /> {LoginAuthMessage.ChangePassword.niceToString()}</NavDropdown.Item>

47 +

<NavDropdown.Item><FontAwesomeIcon icon="key" fixedWidth className="me-2" /> {LoginAuthMessage.ChangePassword.niceToString()}</NavDropdown.Item>

48 48

</LinkContainer>}

49 49

{extraButtons}

50 50

{(cpv || pv || extraButtons) && <NavDropdown.Divider />}

51 -

{suv && <LinkContainer to="~/auth/login"><NavDropdown.Item><FontAwesomeIcon icon="user-friends" className="mr-2" /> {LoginAuthMessage.SwitchUser.niceToString()}</NavDropdown.Item></LinkContainer>}

52 -

<NavDropdown.Item id="sf-auth-logout" onClick={() => AuthClient.logout()}><FontAwesomeIcon icon="sign-out-alt" fixedWidth className="mr-2"/> {LoginAuthMessage.Logout.niceToString()}</NavDropdown.Item>

51 +

{suv && <LinkContainer to="~/auth/login"><NavDropdown.Item><FontAwesomeIcon icon="user-friends" className="me-2" /> {LoginAuthMessage.SwitchUser.niceToString()}</NavDropdown.Item></LinkContainer>}

52 +

<NavDropdown.Item id="sf-auth-logout" onClick={() => AuthClient.logout()}><FontAwesomeIcon icon="sign-out-alt" fixedWidth className="me-2"/> {LoginAuthMessage.Logout.niceToString()}</NavDropdown.Item>

53 53

</NavDropdown>

54 54

);

55 55

}

Original file line number Diff line number Diff line change

@@ -38,13 +38,15 @@ export default function LoginPage() {

38 38

{showLoginForm && <LoginForm ctx={ctx} />}

39 39

{LoginPage.customLoginButtons && LoginPage.customLoginButtons(ctx)}

40 40

{LoginPage.showLoginForm == "initially_not" && showLoginForm == false &&

41 -

<div className="col-md-6 offset-md-3 mt-2">

42 -

<a href="#" onClick={e => {

43 -

e.preventDefault();

44 -

setShowLoginForm(true);

45 -

}}>

46 -

{LoginAuthMessage.ShowLoginForm.niceToString()}

47 -

</a>

41 +

<div className="row">

42 +

<div className="col-md-6 offset-md-3 mt-2">

43 +

<a href="#" className="ms-1" onClick={e => {

44 +

e.preventDefault();

45 +

setShowLoginForm(true);

46 +

}}>

47 +

{LoginAuthMessage.ShowLoginForm.niceToString()}

48 +

</a>

49 +

</div>

48 50

</div>

49 51

}

50 52

</div>

@@ -110,12 +112,10 @@ export function LoginForm(p: { ctx: LoginContext }) {

110 112

</div>

111 113

<div className="row">

112 114

<div className="col-md-6 offset-md-3">

113 -

<div className={classes("form-group", error("userName") && "has-error")}>

115 +

<div className={classes("form-group mb-3", error("userName") && "has-error")}>

114 116

<label className="sr-only" htmlFor="userName">{LoginAuthMessage.Username.niceToString()}</label>

115 117

<div className="input-group mb-2 mr-sm-2 mb-sm-0">

116 -

<div className="input-group-prepend">

117 -

<div className="input-group-text"><FontAwesomeIcon icon="user" style={{ width: "16px" }} /></div>

118 -

</div>

118 +

<div className="input-group-text"><FontAwesomeIcon icon="user" style={{ width: "16px" }} /></div>

119 119

<input type="text" className="form-control" id="userName" ref={userName} placeholder={LoginAuthMessage.Username.niceToString()} disabled={p.ctx.loading != null} />

120 120

</div>

121 121

{error("userName") && <span className="help-block text-danger">{error("userName")}</span>}

@@ -124,12 +124,10 @@ export function LoginForm(p: { ctx: LoginContext }) {

124 124

</div>

125 125

<div className="row">

126 126

<div className="col-md-6 offset-md-3">

127 -

<div className={classes("form-group", error("password") && "has-error")}>

127 +

<div className={classes("form-group mb-3", error("password") && "has-error")}>

128 128

<label className="sr-only" htmlFor="password">{LoginAuthMessage.Password.niceToString()}</label>

129 129

<div className="input-group mb-2 mr-sm-2 mb-sm-0">

130 -

<div className="input-group-prepend">

131 -

<div className="input-group-text"><FontAwesomeIcon icon="key" style={{ width: "16px" }} /></div>

132 -

</div>

130 +

<div className="input-group-text"><FontAwesomeIcon icon="key" style={{ width: "16px" }} /></div>

133 131

<input ref={password} type="password" name="password" className="form-control" id="password" placeholder={LoginAuthMessage.Password.niceToString()} disabled={p.ctx.loading != null} />

134 132

</div>

135 133

{error("password") && <span className="help-block text-danger">{error("password")}</span>}

@@ -138,11 +136,10 @@ export function LoginForm(p: { ctx: LoginContext }) {

138 136

</div>

139 137

{AuthClient.Options.userTicket &&

140 138

<div className="row">

141 -

<div className="col-md-6 offset-md-3" style={{ paddingTop: ".35rem" }}>

139 +

<div className="col-md-6 offset-md-3">

142 140

<div className="form-check mb-2 mr-sm-2 mb-sm-0">

143 -

<label className="sf-remember-me">

144 -

<input ref={rememberMe} name="remember" type="checkbox" disabled={p.ctx.loading != null} /> {LoginAuthMessage.RememberMe.niceToString()}

145 -

</label>

141 +

<input ref={rememberMe} name="remember" id="rememberMe" className="form-check-input" type="checkbox" disabled={p.ctx.loading != null} />

142 +

<label className="sf-remember-me form-check-label" htmlFor="rememberMe" >{LoginAuthMessage.RememberMe.niceToString()}</label>

146 143

</div>

147 144

</div>

148 145

</div>

@@ -153,15 +150,15 @@ export function LoginForm(p: { ctx: LoginContext }) {

153 150

<button type="submit" id="login" className="btn btn-success" disabled={p.ctx.loading != null}>

154 151

{p.ctx.loading == "password" ?

155 152

<FontAwesomeIcon icon="cog" fixedWidth style={{ fontSize: "larger" }} spin /> : < FontAwesomeIcon icon="sign-in-alt" />}

156 -

&nbsp;

153 +

&nbsp;

157 154

{p.ctx.loading == "password" ? JavascriptMessage.loading.niceToString() : AuthClient.currentUser() ? LoginAuthMessage.SwitchUser.niceToString() : LoginAuthMessage.Login.niceToString()}

158 155

</button>

159 156

{error("login") && <span className="help-block text-danger" style={{ color: "red" }}>{error("login")}</span>}

160 157

{AuthClient.Options.resetPassword && !p.ctx.loading &&

161 158

<span>

162 159

&nbsp;

163 160

&nbsp;

164 -

<Link to="~/auth/forgotPasswordEmail">{LoginAuthMessage.IHaveForgottenMyPassword.niceToString()}</Link>

161 +

<Link to="~/auth/forgotPasswordEmail">{LoginAuthMessage.IHaveForgottenMyPassword.niceToString()}</Link>

165 162

</span>

166 163

}

167 164

</div>

Original file line number Diff line number Diff line change

@@ -42,10 +42,10 @@ export function DoublePassword(p: { ctx: TypeContext<string>, isNew: boolean, ma

42 42

return (

43 43

<div>

44 44

<FormGroup ctx={p.ctx} labelText={LoginAuthMessage.NewPassword.niceToString()}>

45 -

<input type="password" ref={newPass} autoComplete="off" className={classes(p.ctx.formControlClass, p.mandatory && !newPass.current?.value ? "sf-mandatory" : null)} onBlur={handlePasswordBlur} />

45 +

<input type="password" ref={newPass} autoComplete="off" placeholder={LoginAuthMessage.NewPassword.niceToString()} className={classes(p.ctx.formControlClass, p.mandatory && !newPass.current?.value ? "sf-mandatory" : null)} onBlur={handlePasswordBlur} />

46 46

</FormGroup>

47 47

<FormGroup ctx={p.ctx} labelText={LoginAuthMessage.ConfirmNewPassword.niceToString()}>

48 -

<input type="password" ref={newPass2} autoComplete="off" className={classes(p.ctx.formControlClass, p.mandatory && !newPass2.current?.value ? "sf-mandatory" : null)} onBlur={handlePasswordBlur} />

48 +

<input type="password" ref={newPass2} autoComplete="off" placeholder={LoginAuthMessage.ConfirmNewPassword.niceToString()} className={classes(p.ctx.formControlClass, p.mandatory && !newPass2.current?.value ? "sf-mandatory" : null)} onBlur={handlePasswordBlur} />

49 49

</FormGroup>

50 50

</div>

51 51

);

Original file line number Diff line number Diff line change

@@ -57,13 +57,12 @@ function isControlled(p: CollapsableCardProps): [boolean, (isOpen: boolean) => v

57 57

export default function CollapsableCard(p: CollapsableCardProps) {

58 58 59 59

const [isOpen, setIsOpen] = isControlled(p);

60 -

const isRTL = React.useMemo(() => document.body.classList.contains("rtl"), []);

61 60

return (

62 61

<div className={classes("card", cardStyleClasses(p.cardStyle), p.size && ("card-" + p.size))}>

63 62

<div className={classes("card-header", cardStyleClasses(p.headerStyle))} style={{ cursor: "pointer" }} onClick={() => setIsOpen(!isOpen)}>

64 63

{(p.collapsable == undefined || p.collapsable == true) &&

65 64

<span

66 -

className={isRTL ? "float-left" : "float-right"}

65 +

className={"float-end"}

67 66

style={{ cursor: "pointer" }}

68 67

onClick={() => setIsOpen(!isOpen)}>

69 68

<FontAwesomeIcon icon={isOpen ? "chevron-up" : "chevron-down"} />

Original file line number Diff line number Diff line change

@@ -31,7 +31,7 @@ export default function PropertyRouteCombo(p : PropertyRouteComboProps){

31 31

var routes = p.routes ?? Dic.getValues(getTypeInfo(p.type.cleanName).members).filter(p.filter!).map(mi => PropertyRoute.parse(p.type.cleanName, mi.name));

32 32 33 33

return (

34 -

<select className={ctx.formControlClass} value={ctx.value?.path ?? ""} onChange={handleChange} >

34 +

<select className={ctx.formSelectClass} value={ctx.value?.path ?? ""} onChange={handleChange} >

35 35

<option value=""> - </option>

36 36

{routes.map(r => r.propertyPath()).map(path =>

37 37

<option key={path} value={path}>{path}</option>

You can’t perform that action at this time.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4