Compare commits
13 Commits
develop-V2
...
fork/v1.6
| Author | SHA1 | Date | |
|---|---|---|---|
| 3706a4f78e | |||
| f4cf03966c | |||
| 630ec88c7e | |||
| 8484265c2a | |||
| dbdb75a888 | |||
| 0dc6316b5b | |||
| c7d1735e4b | |||
| aa93dab7fd | |||
| 5a9ae86cf9 | |||
| 7f5f94491e | |||
| a2979650f2 | |||
| 8e8932cd83 | |||
| c15505062d |
@@ -9,19 +9,27 @@ assignees: ''
|
||||
|
||||
## Sources
|
||||
|
||||
> List here what is included in this part of the book to implement. E.g., for special abilities, you need to list every source of entries from the book. Example (in German):
|
||||
>
|
||||
> - S. 133–150 (Berufsgeheimnisse)
|
||||
<!-- List here what is included in this part of the book to implement. E.g., for special abilities, you need to list every source of entries from the book. Use page ranges if entries span multiple pages. Example:
|
||||
|
||||
- S. X (Section/Chapter Name)
|
||||
- [ ] S. 133 (Entry A)
|
||||
- [ ] S. 133–134 (Entry B)
|
||||
|
||||
Alternatively, provide an overview of the different sections in the book where one or more relevant entries occur. Example (in German):
|
||||
|
||||
- [ ] S. 133–150 (Berufsgeheimnisse)
|
||||
|
||||
-->
|
||||
|
||||
- [ ] S. X (Entry/Section/Chapter Name)
|
||||
|
||||
## Special Notes
|
||||
|
||||
> List here any special hints to implement the sources listed above.
|
||||
>
|
||||
> - …
|
||||
<!-- List here any special hints to implement the sources listed above. Example:
|
||||
|
||||
- All entries are already present, only add source references
|
||||
- Pay attention to the layout of entry A, there is a gap that should not be in Optolith
|
||||
|
||||
Replace the dash below this comment if there are any notes. -->
|
||||
|
||||
—
|
||||
|
||||
@@ -29,8 +37,10 @@ assignees: ''
|
||||
|
||||
## Special Implementations
|
||||
|
||||
> List here what cannot be solved only using the database. Example (in German):
|
||||
>
|
||||
> - [ ] Voraussetzungen Vorliebe I-II
|
||||
<!-- List issues that track what cannot be solved only using the database. Example:
|
||||
|
||||
- #123
|
||||
|
||||
Replace the dash below this comment if there are any notes. -->
|
||||
|
||||
—
|
||||
|
||||
@@ -2,6 +2,13 @@
|
||||
|
||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||
|
||||
### [1.5.2](https://github.com/elyukai/optolith-client/compare/v1.5.2-alpha.4...v1.5.2) (2025-01-02)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* throws during startup due to changed devtools identifiers ([7f5f944](https://github.com/elyukai/optolith-client/commit/7f5f94491e1432d66add1315889075fb5369f700)), closes [#1634](https://github.com/elyukai/optolith-client/issues/1634)
|
||||
|
||||
### [1.5.2-alpha.4](https://github.com/elyukai/optolith-client/compare/v1.5.2-alpha.3...v1.5.2-alpha.4) (2022-07-22)
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"appId": "com.lukasobermann.optolith",
|
||||
"productName": "Optolith",
|
||||
"directories": { "output": "dist" },
|
||||
"files": ["app/**/*", "LICENSE"],
|
||||
"npmRebuild": false,
|
||||
"mac": {
|
||||
"category": "public.app-category.role-playing-games",
|
||||
"icon": "app/icon.icns",
|
||||
"target": [
|
||||
{ "target": "dmg", "arch": ["arm64", "x64"] },
|
||||
{ "target": "zip", "arch": ["arm64", "x64"] }
|
||||
],
|
||||
"artifactName": "Optolith_${version}_${arch}.${ext}",
|
||||
"identity": null
|
||||
},
|
||||
"dmg": { "sign": false }
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
{
|
||||
"appId": "com.lukasobermann.optolith",
|
||||
"productName": "Optolith",
|
||||
"directories": {
|
||||
"output": "dist"
|
||||
},
|
||||
"files": [
|
||||
"app/**/*",
|
||||
"LICENSE"
|
||||
],
|
||||
"npmRebuild": false,
|
||||
"win": {
|
||||
"target": [
|
||||
{
|
||||
"target": "nsis",
|
||||
"arch": [
|
||||
"x64"
|
||||
]
|
||||
}
|
||||
],
|
||||
"icon": "app/icon.ico",
|
||||
"artifactName": "OptolithSetup_${version}.${ext}"
|
||||
},
|
||||
"nsis": {
|
||||
"perMachine": false,
|
||||
"deleteAppDataOnUninstall": false
|
||||
},
|
||||
"linux": {
|
||||
"category": "RolePlaying",
|
||||
"executableName": "Optolith",
|
||||
"icon": "app",
|
||||
"target": [
|
||||
{
|
||||
"target": "AppImage",
|
||||
"arch": [
|
||||
"x64"
|
||||
]
|
||||
},
|
||||
{
|
||||
"target": "tar.gz",
|
||||
"arch": [
|
||||
"x64"
|
||||
]
|
||||
}
|
||||
],
|
||||
"artifactName": "Optolith_${version}.${ext}"
|
||||
},
|
||||
"publish": null
|
||||
}
|
||||
Generated
+1869
-2107
File diff suppressed because it is too large
Load Diff
+3
-3
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "optolith",
|
||||
"productName": "Optolith",
|
||||
"version": "1.5.2-alpha.4",
|
||||
"version": "1.6.0",
|
||||
"description": "A generator for heroes for the P&P-RPG 'The Dark Eye'.",
|
||||
"author": {
|
||||
"name": "Lukas Obermann",
|
||||
@@ -14,7 +14,7 @@
|
||||
"@electron/remote": "^2.0.8",
|
||||
"adm-zip": "^0.5.1",
|
||||
"ajv": "6.12.6",
|
||||
"electron-devtools-installer": "^3.2.0",
|
||||
"electron-devtools-installer": "^3.2.1",
|
||||
"electron-log": "^4.4.8",
|
||||
"electron-updater": "^5.0.5",
|
||||
"electron-window-state": "5.0.3",
|
||||
@@ -103,4 +103,4 @@
|
||||
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,3 +3,17 @@
|
||||
@import "NavigationBarRight";
|
||||
@import "NavigationBarTabs";
|
||||
@import "NavigationBarWrapper";
|
||||
|
||||
.fork-badge {
|
||||
align-self: center;
|
||||
background-color: #b33636;
|
||||
border-radius: 3px;
|
||||
color: #fff;
|
||||
font-size: 11px;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0.05em;
|
||||
line-height: 1;
|
||||
margin: 0 6px;
|
||||
padding: 4px 7px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ import { translate, translateP } from "../../Utilities/I18n"
|
||||
import { TabId } from "../../Utilities/LocationUtils"
|
||||
import { signNeg } from "../../Utilities/NumberUtils"
|
||||
import { pipe, pipe_ } from "../../Utilities/pipe"
|
||||
import { current_version } from "../../Selectors/envSelectors"
|
||||
import { AvatarWrapper } from "../Universal/AvatarWrapper"
|
||||
import { BorderButton } from "../Universal/BorderButton"
|
||||
import { IconButton } from "../Universal/IconButton"
|
||||
@@ -167,6 +168,9 @@ export const NavigationBar: React.FC<NavigationBarProps> = props => {
|
||||
</>
|
||||
)
|
||||
: null}
|
||||
<Text className="fork-badge">
|
||||
{`FORK ${current_version}`}
|
||||
</Text>
|
||||
<IconButton
|
||||
icon=""
|
||||
onClick={openSettings}
|
||||
|
||||
+20
-9
@@ -3,7 +3,7 @@ import { app, BrowserWindow, ipcMain, shell } from "electron"
|
||||
import * as log from "electron-log"
|
||||
import { autoUpdater, CancellationToken, UpdateInfo } from "electron-updater"
|
||||
import windowStateKeeper from "electron-window-state"
|
||||
import { promises } from "fs"
|
||||
import { existsSync, promises } from "fs"
|
||||
import * as path from "path"
|
||||
import { prerelease } from "semver"
|
||||
import * as url from "url"
|
||||
@@ -14,7 +14,12 @@ remote.initialize ()
|
||||
|
||||
app.setAppUserModelId ("lukasobermann.optolith")
|
||||
|
||||
const isUpdaterEnabled = autoUpdater.isUpdaterActive ()
|
||||
// Ohne app-update.yml (lokale Test-Builds, unsignierte macOS-Builds) schlägt
|
||||
// checkForUpdates immer fehl und zeigt beim Start einen Fehlerdialog —
|
||||
// isUpdaterActive() prüft nur isPackaged, nicht ob eine Update-Konfig existiert.
|
||||
const hasUpdateConfig = existsSync (path.join (process.resourcesPath, "app-update.yml"))
|
||||
|
||||
const isUpdaterEnabled = hasUpdateConfig && autoUpdater.isUpdaterActive ()
|
||||
|
||||
ipcMain.on (IPCChannels.IsUpdaterEnabled, event => {
|
||||
event.returnValue = isUpdaterEnabled
|
||||
@@ -55,7 +60,7 @@ const createWindow = async () => {
|
||||
icon: path.join (app.getAppPath (), "app", "icon.png"),
|
||||
frame: false,
|
||||
center: true,
|
||||
title: "Optolith",
|
||||
title: "Optolith Fork",
|
||||
acceptFirstMouse: true,
|
||||
backgroundColor: "#111111",
|
||||
show: false,
|
||||
@@ -182,14 +187,20 @@ const main = async () => {
|
||||
|
||||
console.log ("main: Install extensions ...")
|
||||
|
||||
const installExtension = require ("electron-devtools-installer")
|
||||
|
||||
const installedExtensions = await installExtension.default ([
|
||||
installExtension.REACT_DEVELOPER_TOOLS,
|
||||
installExtension.REDUX_DEVTOOLS,
|
||||
])
|
||||
try {
|
||||
const installExtension = require ("electron-devtools-installer")
|
||||
|
||||
console.log (`main: Installed extensions: ${installedExtensions}`)
|
||||
const installedExtensions = await installExtension.default ([
|
||||
installExtension.REACT_DEVELOPER_TOOLS,
|
||||
installExtension.REDUX_DEVTOOLS,
|
||||
])
|
||||
|
||||
console.log (`main: Installed extensions: ${installedExtensions}`)
|
||||
}
|
||||
catch (error) {
|
||||
console.error ("main: Installing extensions failed! Skipping extensions...")
|
||||
}
|
||||
|
||||
console.log ("main: Create Window ...")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user