mirror of
https://github.com/omnivore-app/omnivore.git
synced 2026-03-11 08:54:26 +00:00
Remove reference to omnivore.app
This commit is contained in:
parent
a7ad44d840
commit
bda21730cd
176 changed files with 749 additions and 747 deletions
18
README.md
18
README.md
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
<img align="right" src="https://avatars.githubusercontent.com/u/70113176?s=400&u=506b21d9f019f3160963c010ef363667fb24c7c9&v=4" height="150px" alt="Omnivore Logo">
|
||||
|
||||
[Omnivore](https://omnivore.app) is a complete, open source read-it-later solution for people who like text.
|
||||
[Omnivore](https://omnivore.work) is a complete, open source read-it-later solution for people who like text.
|
||||
|
||||
We built Omnivore because we love reading and we want it to be more social. Join us!
|
||||
|
||||
|
|
@ -17,11 +17,11 @@ We built Omnivore because we love reading and we want it to be more social. Join
|
|||
- Automatically saves your place in long articles
|
||||
- Add newsletter articles via email (with substack support!)
|
||||
- PDF support
|
||||
- [Web app](https://omnivore.app/) written in Node.js and TypeScript
|
||||
- [Native iOS app](https://omnivore.app/install/ios) ([source](https://github.com/omnivore-app/omnivore/tree/main/apple))
|
||||
- [Android app](https://omnivore.app/install/android) ([source](https://github.com/omnivore-app/omnivore/tree/main/android/Omnivore))
|
||||
- [Web app](https://omnivore.work/) written in Node.js and TypeScript
|
||||
- [Native iOS app](https://omnivore.work/install/ios) ([source](https://github.com/omnivore-app/omnivore/tree/main/apple))
|
||||
- [Android app](https://omnivore.work/install/android) ([source](https://github.com/omnivore-app/omnivore/tree/main/android/Omnivore))
|
||||
- Progressive web app for Android users
|
||||
- Browser extensions for [Chrome](https://omnivore.app/install/chrome), [Safari](https://omnivore.app/install/safari), [Firefox](https://omnivore.app/install/firefox), and [Edge](https://omnivore.app/install/edge)
|
||||
- Browser extensions for [Chrome](https://omnivore.work/install/chrome), [Safari](https://omnivore.work/install/safari), [Firefox](https://omnivore.work/install/firefox), and [Edge](https://omnivore.work/install/edge)
|
||||
- Labels (aka tagging)
|
||||
- Offline support
|
||||
- Text to speech (iOS only)
|
||||
|
|
@ -38,7 +38,7 @@ A guide for running a self hosted server can be found [here](./self-hosting/GUID
|
|||
|
||||
We're building our community on Discord. [Join us!](https://discord.gg/h2z5rppzz9)
|
||||
|
||||
Read more about Omnivore on our blog. <https://blog.omnivore.app/p/getting-started-with-omnivore>
|
||||
Read more about Omnivore on our blog. <https://blog.omnivore.work/p/getting-started-with-omnivore>
|
||||
|
||||
## Shoutouts :tada:
|
||||
|
||||
|
|
@ -57,7 +57,7 @@ Omnivore takes advantage of some great open source software:
|
|||
|
||||
## Importing Libraries
|
||||
|
||||
Check out our [docs](https://docs.omnivore.app/using/importing.html) for information on importing your data from other apps.
|
||||
Check out our [docs](https://docs.omnivore.work/using/importing.html) for information on importing your data from other apps.
|
||||
|
||||
## How to setup local development :computer:
|
||||
|
||||
|
|
@ -88,7 +88,7 @@ Open <http://localhost:3000> and confirm Omnivore is running
|
|||
|
||||
#### 3. Login with the test account
|
||||
|
||||
During database setup docker compose creates an account `demo@omnivore.app`, password: `demo_password`.
|
||||
During database setup docker compose creates an account `demo@omnivore.work`, password: `demo_password`.
|
||||
|
||||
Go to <http://localhost:3000/> in your browser and choose `Continue with Email` to login.
|
||||
|
||||
|
|
@ -145,7 +145,7 @@ yarn start
|
|||
This will start the puppeteer-parse service on port 9090.
|
||||
|
||||
In your browser go to <http://localhost:3000/home>, click the `Add Link` button,
|
||||
and enter a URL such as `https://blog.omnivore.app/p/getting-started-with-omnivore`.
|
||||
and enter a URL such as `https://blog.omnivore.work/p/getting-started-with-omnivore`.
|
||||
|
||||
You should see a Chromium window open and navigate to your link. When the service
|
||||
is done fetching your content you will see it in your library.
|
||||
|
|
|
|||
12
SECURITY.md
12
SECURITY.md
|
|
@ -6,14 +6,14 @@ Keeping user information safe and secure is a top priority, and we welcome the c
|
|||
|
||||
Omnivore runs a number of services but only submissions under the following domains are eligible for rewards. Any Omnivore-owned domains not listed below are not in scope, not eligible for rewards, and not covered by our legal safe harbor.
|
||||
|
||||
- omnivore.app
|
||||
- demo.omnivore.app
|
||||
- omnivore.work
|
||||
- demo.omnivore.work
|
||||
|
||||
## Domains that are out of scope:
|
||||
|
||||
- docs.omnivore.app
|
||||
- blog.omnivore.app
|
||||
- changes.omnivore.app
|
||||
- docs.omnivore.work
|
||||
- blog.omnivore.work
|
||||
- changes.omnivore.work
|
||||
|
||||
## The following vulnerability categories are outside of the scope of our responsible disclosure program, and aren't eligible for bounty:
|
||||
|
||||
|
|
@ -30,7 +30,7 @@ Omnivore runs a number of services but only submissions under the following doma
|
|||
|
||||
# How to Submit a Report
|
||||
|
||||
To submit a vulnerability report to Omnivore Media, please contact us at feedback@omnivore.app. Your submission will be reviewed and validated by a member of our security team.
|
||||
To submit a vulnerability report to Omnivore Media, please contact us at feedback@omnivore.work. Your submission will be reviewed and validated by a member of our security team.
|
||||
|
||||
# Safe Harbor
|
||||
|
||||
|
|
|
|||
|
|
@ -57,8 +57,8 @@ android {
|
|||
debug {
|
||||
signingConfig = signingConfigs.getByName("debug")
|
||||
applicationIdSuffix = ".debug"
|
||||
buildConfigField("String", "OMNIVORE_API_URL", "\"https://api-demo.omnivore.app\"")
|
||||
buildConfigField("String", "OMNIVORE_WEB_URL", "\"https://demo.omnivore.app\"")
|
||||
buildConfigField("String", "OMNIVORE_API_URL", "\"https://api-demo.omnivore.work\"")
|
||||
buildConfigField("String", "OMNIVORE_WEB_URL", "\"https://demo.omnivore.work\"")
|
||||
buildConfigField(
|
||||
"String",
|
||||
"OMNIVORE_GAUTH_SERVER_CLIENT_ID",
|
||||
|
|
@ -68,8 +68,8 @@ android {
|
|||
release {
|
||||
isMinifyEnabled = false
|
||||
signingConfig = signingConfigs.getByName("release")
|
||||
buildConfigField("String", "OMNIVORE_API_URL", "\"https://api-prod.omnivore.app\"")
|
||||
buildConfigField("String", "OMNIVORE_WEB_URL", "\"https://omnivore.app\"")
|
||||
buildConfigField("String", "OMNIVORE_API_URL", "\"https://api-prod.omnivore.work\"")
|
||||
buildConfigField("String", "OMNIVORE_WEB_URL", "\"https://omnivore.work\"")
|
||||
buildConfigField(
|
||||
"String",
|
||||
"OMNIVORE_GAUTH_SERVER_CLIENT_ID",
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -225,7 +225,7 @@ fun WelcomeHeader() {
|
|||
@Composable
|
||||
fun MoreInfoButton() {
|
||||
val context = LocalContext.current
|
||||
val intent = remember { Intent(Intent.ACTION_VIEW, Uri.parse("https://omnivore.app/about")) }
|
||||
val intent = remember { Intent(Intent.ACTION_VIEW, Uri.parse("https://omnivore.work/about")) }
|
||||
|
||||
ClickableText(
|
||||
text = AnnotatedString(
|
||||
|
|
|
|||
|
|
@ -114,7 +114,7 @@ fun SelfHostedFields(
|
|||
OutlinedTextField(
|
||||
modifier = Modifier.fillMaxWidth(),
|
||||
value = apiServer,
|
||||
placeholder = { Text(text = "https://api-prod.omnivore.app/") },
|
||||
placeholder = { Text(text = "https://api-prod.omnivore.work/") },
|
||||
label = { Text(stringResource(R.string.self_hosted_view_field_api_url_label)) },
|
||||
onValueChange = onAPIServerChange,
|
||||
keyboardOptions = KeyboardOptions(
|
||||
|
|
@ -127,7 +127,7 @@ fun SelfHostedFields(
|
|||
OutlinedTextField(
|
||||
modifier = Modifier.fillMaxWidth().padding(bottom = 32.dp),
|
||||
value = webServer,
|
||||
placeholder = { Text(text = "https://omnivore.app/") },
|
||||
placeholder = { Text(text = "https://omnivore.work/") },
|
||||
label = { Text(stringResource(R.string.self_hosted_view_field_web_url_label)) },
|
||||
onValueChange = onWebServerChange,
|
||||
keyboardOptions = KeyboardOptions(
|
||||
|
|
|
|||
|
|
@ -120,7 +120,7 @@ internal fun AboutScreen(
|
|||
LinkIcon(
|
||||
label = stringResource(R.string.website),
|
||||
icon = Icons.Outlined.Public,
|
||||
url = "https://omnivore.app",
|
||||
url = "https://omnivore.work",
|
||||
)
|
||||
LinkIcon(
|
||||
label = "Discord",
|
||||
|
|
|
|||
|
|
@ -166,15 +166,15 @@ fun PrimaryNavigator(
|
|||
}
|
||||
|
||||
composable(Routes.Documentation.route) {
|
||||
WebViewScreen(navController = navController, url = "https://docs.omnivore.app")
|
||||
WebViewScreen(navController = navController, url = "https://docs.omnivore.work")
|
||||
}
|
||||
|
||||
composable(Routes.PrivacyPolicy.route) {
|
||||
WebViewScreen(navController = navController, url = "https://omnivore.app/privacy")
|
||||
WebViewScreen(navController = navController, url = "https://omnivore.work/privacy")
|
||||
}
|
||||
|
||||
composable(Routes.TermsAndConditions.route) {
|
||||
WebViewScreen(navController = navController, url = "https://omnivore.app/app/terms")
|
||||
WebViewScreen(navController = navController, url = "https://omnivore.work/app/terms")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,4 +15,4 @@ object AppleConstants {
|
|||
}
|
||||
|
||||
const val FORGOT_PASSWORD_URL = "${BuildConfig.OMNIVORE_WEB_URL}/auth/forgot-password"
|
||||
const val SELF_HOSTING_URL = "https://docs.omnivore.app/self-hosting/self-hosting.html"
|
||||
const val SELF_HOSTING_URL = "https://docs.omnivore.work/self-hosting/self-hosting.html"
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<true/>
|
||||
<key>com.apple.security.application-groups</key>
|
||||
<array>
|
||||
<string>QJF2XZ86HB.app.omnivore.app</string>
|
||||
<string>QJF2XZ86HB.app.omnivore.work</string>
|
||||
</array>
|
||||
<key>com.apple.security.files.user-selected.read-only</key>
|
||||
<true/>
|
||||
|
|
|
|||
|
|
@ -10,11 +10,11 @@
|
|||
</array>
|
||||
<key>com.apple.developer.associated-domains</key>
|
||||
<array>
|
||||
<string>applinks:omnivore.app</string>
|
||||
<string>applinks:dev.omnivore.app</string>
|
||||
<string>applinks:demo.omnivore.app</string>
|
||||
<string>webcredentials:omnivore.app</string>
|
||||
<string>webcredentials:dev.omnivore.app</string>
|
||||
<string>applinks:omnivore.work</string>
|
||||
<string>applinks:dev.omnivore.work</string>
|
||||
<string>applinks:demo.omnivore.work</string>
|
||||
<string>webcredentials:omnivore.work</string>
|
||||
<string>webcredentials:dev.omnivore.work</string>
|
||||
</array>
|
||||
<key>com.apple.developer.authentication-services.autofill-credential-provider</key>
|
||||
<true/>
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<true/>
|
||||
<key>com.apple.security.application-groups</key>
|
||||
<array>
|
||||
<string>QJF2XZ86HB.app.omnivore.app</string>
|
||||
<string>QJF2XZ86HB.app.omnivore.work</string>
|
||||
</array>
|
||||
<key>com.apple.security.files.user-selected.read-only</key>
|
||||
<true/>
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<true/>
|
||||
<key>com.apple.security.application-groups</key>
|
||||
<array>
|
||||
<string>QJF2XZ86HB.app.omnivore.app</string>
|
||||
<string>QJF2XZ86HB.app.omnivore.work</string>
|
||||
</array>
|
||||
<key>com.apple.security.files.user-selected.read-only</key>
|
||||
<true/>
|
||||
|
|
|
|||
|
|
@ -199,7 +199,7 @@
|
|||
0480E71326D939BF006CAE2F /* MacLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MacLaunchTests.swift; sourceTree = "<group>"; };
|
||||
0480E71526D939BF006CAE2F /* MacUITests.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = MacUITests.plist; sourceTree = "<group>"; };
|
||||
0480E71B26D95096006CAE2F /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||
048ECFFC26A0B1CB00469E57 /* Omnivore.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Omnivore.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
048ECFFC26A0B1CB00469E57 /* omnivore.work */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = omnivore.work; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
048ED00A26A0B1CC00469E57 /* MacOmnivore.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = MacOmnivore.plist; sourceTree = "<group>"; };
|
||||
048ED00B26A0B1CC00469E57 /* MacOmnivore.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = MacOmnivore.entitlements; sourceTree = "<group>"; };
|
||||
04920CC5279671EF003EC1B6 /* PushNotificationConfig.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PushNotificationConfig.swift; sourceTree = "<group>"; };
|
||||
|
|
@ -209,7 +209,7 @@
|
|||
04EE741F26DFD2CA001B3483 /* ScreenIdentifierHelpers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScreenIdentifierHelpers.swift; sourceTree = "<group>"; };
|
||||
082449FB9F5F3730EE0D8D3F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||
0BE7F7C593222747A96AA4E7 /* Omnivore.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Omnivore.plist; sourceTree = "<group>"; };
|
||||
1A39D8FDA25447FDBF07E24B /* Omnivore.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Omnivore.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
1A39D8FDA25447FDBF07E24B /* omnivore.work */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = omnivore.work; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
42321E822714E6B00056429F /* scripts */ = {isa = PBXFileReference; lastKnownFileType = folder; path = scripts; sourceTree = "<group>"; };
|
||||
42321E842714E6B00056429F /* views */ = {isa = PBXFileReference; lastKnownFileType = folder; path = views; sourceTree = "<group>"; };
|
||||
42704E7228E6BDAF00C8C73E /* SnapshotHelper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SnapshotHelper.swift; sourceTree = "<group>"; };
|
||||
|
|
@ -532,10 +532,10 @@
|
|||
E601FA26367162479B614F0F /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
1A39D8FDA25447FDBF07E24B /* Omnivore.app */,
|
||||
1A39D8FDA25447FDBF07E24B /* omnivore.work */,
|
||||
B5EF8E3E143618BFA9F4D89A /* OmnivoreTests.xctest */,
|
||||
95D337DDCEA2007A9705A969 /* ShareExtension.appex */,
|
||||
048ECFFC26A0B1CB00469E57 /* Omnivore.app */,
|
||||
048ECFFC26A0B1CB00469E57 /* omnivore.work */,
|
||||
0411792726A22860004AE24F /* UnitTests-MacApp.xctest */,
|
||||
046C5CD226A3F89A00AC5349 /* ShareExtension-Mac.appex */,
|
||||
0480E71126D939BF006CAE2F /* UITests-Mac.xctest */,
|
||||
|
|
@ -646,7 +646,7 @@
|
|||
04B8B00526A0CEFA00D3ED0C /* App */,
|
||||
);
|
||||
productName = MacOmnivore;
|
||||
productReference = 048ECFFC26A0B1CB00469E57 /* Omnivore.app */;
|
||||
productReference = 048ECFFC26A0B1CB00469E57 /* omnivore.work */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
3D30FF2BDEFCACE5A2A13AD1 /* ShareExtension */ = {
|
||||
|
|
@ -753,7 +753,7 @@
|
|||
045B1680279147E7005047F7 /* FirebaseMessaging */,
|
||||
);
|
||||
productName = Omnivore;
|
||||
productReference = 1A39D8FDA25447FDBF07E24B /* Omnivore.app */;
|
||||
productReference = 1A39D8FDA25447FDBF07E24B /* omnivore.work */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
B46CFFB2A582C337CB0AAAEF /* OmnivoreTests-iOS */ = {
|
||||
|
|
@ -1172,7 +1172,7 @@
|
|||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
SWIFT_VERSION = 5.6;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Omnivore.app/Contents/MacOS/Omnivore";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/omnivore.work/Contents/MacOS/Omnivore";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
|
|
@ -1198,7 +1198,7 @@
|
|||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-O";
|
||||
SWIFT_VERSION = 5.6;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Omnivore.app/Contents/MacOS/Omnivore";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/omnivore.work/Contents/MacOS/Omnivore";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
|
|
@ -1273,7 +1273,7 @@
|
|||
MARKETING_VERSION = 1.23.0;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.app.ShareExtension-Mac";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.work.ShareExtension-Mac";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
|
|
@ -1305,7 +1305,7 @@
|
|||
MACOSX_DEPLOYMENT_TARGET = 12.0;
|
||||
MARKETING_VERSION = 1.23.0;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.app.ShareExtension-Mac";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.work.ShareExtension-Mac";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
|
|
@ -1392,7 +1392,7 @@
|
|||
MARKETING_VERSION = 1.46.0;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.app;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.work;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
|
|
@ -1426,7 +1426,7 @@
|
|||
MACOSX_DEPLOYMENT_TARGET = 12.0;
|
||||
MARKETING_VERSION = 1.46.0;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.app;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.work;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
|
|
@ -1458,7 +1458,7 @@
|
|||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
SWIFT_VERSION = 5.5;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Omnivore.app/Omnivore";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/omnivore.work/Omnivore";
|
||||
TEST_TARGET_NAME = Omnivore;
|
||||
};
|
||||
name = Debug;
|
||||
|
|
@ -1479,8 +1479,8 @@
|
|||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.46.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.app;
|
||||
MARKETING_VERSION = 1.46.1;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.work;
|
||||
PRODUCT_NAME = Omnivore;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = iphoneos;
|
||||
|
|
@ -1504,7 +1504,7 @@
|
|||
MARKETING_VERSION = 1.0;
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.AppStoreScreenshots;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.workStoreScreenshots;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = iphoneos;
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
||||
|
|
@ -1527,7 +1527,7 @@
|
|||
IPHONEOS_DEPLOYMENT_TARGET = 16.0;
|
||||
MARKETING_VERSION = 1.0;
|
||||
MTL_FAST_MATH = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.AppStoreScreenshots;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.workStoreScreenshots;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = iphoneos;
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
|
|
@ -1565,7 +1565,7 @@
|
|||
"-framework",
|
||||
SafariServices,
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.app.Omnivore-Extension";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.work.Omnivore-Extension";
|
||||
PRODUCT_NAME = SafariExtension;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = iphoneos;
|
||||
|
|
@ -1603,7 +1603,7 @@
|
|||
"-framework",
|
||||
SafariServices,
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.app.Omnivore-Extension";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.work.Omnivore-Extension";
|
||||
PRODUCT_NAME = SafariExtension;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = iphoneos;
|
||||
|
|
@ -1644,7 +1644,7 @@
|
|||
"-framework",
|
||||
SafariServices,
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.app.Omnivore-Extension";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.work.Omnivore-Extension";
|
||||
PRODUCT_NAME = SafariExtension;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
|
|
@ -1683,7 +1683,7 @@
|
|||
"-framework",
|
||||
SafariServices,
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.app.Omnivore-Extension";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.work.Omnivore-Extension";
|
||||
PRODUCT_NAME = SafariExtension;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
|
|
@ -1766,7 +1766,7 @@
|
|||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.23.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.app.share-extension";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.work.share-extension";
|
||||
PRODUCT_NAME = ShareExtension;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = iphoneos;
|
||||
|
|
@ -1799,7 +1799,7 @@
|
|||
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
|
||||
SWIFT_VERSION = 5.5;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Omnivore.app/Omnivore";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/omnivore.work/Omnivore";
|
||||
TEST_TARGET_NAME = Omnivore;
|
||||
};
|
||||
name = Release;
|
||||
|
|
@ -1820,8 +1820,8 @@
|
|||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.46.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.app;
|
||||
MARKETING_VERSION = 1.46.1;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.omnivore.work;
|
||||
PRODUCT_NAME = Omnivore;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = iphoneos;
|
||||
|
|
@ -1850,7 +1850,7 @@
|
|||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.23.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.app.share-extension";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "app.omnivore.work.share-extension";
|
||||
PRODUCT_NAME = ShareExtension;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = iphoneos;
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -71,7 +71,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -88,7 +88,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8260E9C026EF983F8970EC05"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore-iOS"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -97,7 +97,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8260E9C026EF983F8970EC05"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore-iOS"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -121,7 +121,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8260E9C026EF983F8970EC05"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore-iOS"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8260E9C026EF983F8970EC05"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore-iOS"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -62,7 +62,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8260E9C026EF983F8970EC05"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore-iOS"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -81,7 +81,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8260E9C026EF983F8970EC05"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore-iOS"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -65,7 +65,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -84,7 +84,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -62,7 +62,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -81,7 +81,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -64,7 +64,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -83,7 +83,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "048ECFFB26A0B1CB00469E57"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8260E9C026EF983F8970EC05"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore-iOS"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -73,7 +73,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8260E9C026EF983F8970EC05"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore-iOS"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
@ -92,7 +92,7 @@
|
|||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8260E9C026EF983F8970EC05"
|
||||
BuildableName = "Omnivore.app"
|
||||
BuildableName = "omnivore.work"
|
||||
BlueprintName = "Omnivore-iOS"
|
||||
ReferencedContainer = "container:Omnivore.xcodeproj">
|
||||
</BuildableReference>
|
||||
|
|
|
|||
|
|
@ -137,7 +137,7 @@ import Views
|
|||
public var body: some Commands {
|
||||
CommandGroup(after: .appInfo) {
|
||||
Button("Open Online", action: {
|
||||
if let url = URL(string: "https://omnivore.app/") {
|
||||
if let url = URL(string: "https://omnivore.work/") {
|
||||
NSWorkspace.shared.open(url)
|
||||
}
|
||||
})
|
||||
|
|
|
|||
|
|
@ -159,7 +159,7 @@ struct DigestConfigView: View {
|
|||
Image.coloredSmallOmnivoreLogo
|
||||
.resizable()
|
||||
.frame(width: 20, height: 20)
|
||||
Text("Omnivore.app")
|
||||
Text("omnivore.work")
|
||||
.font(Font.system(size: 14))
|
||||
.foregroundColor(Color.themeLibraryItemSubtle)
|
||||
Spacer()
|
||||
|
|
|
|||
|
|
@ -238,7 +238,7 @@ struct FullScreenDigestView: View {
|
|||
Image.coloredSmallOmnivoreLogo
|
||||
.resizable()
|
||||
.frame(width: 20, height: 20)
|
||||
Text("Omnivore.app")
|
||||
Text("omnivore.work")
|
||||
.font(Font.system(size: 14))
|
||||
.foregroundColor(Color.themeLibraryItemSubtle)
|
||||
Spacer()
|
||||
|
|
|
|||
|
|
@ -19,9 +19,9 @@ public struct FollowingViewModal: View {
|
|||
|
||||
If you don't need the following tab you can disable it from the filters view in your settings.
|
||||
|
||||
- [Learn more about the following](https://docs.omnivore.app/using/following.html)
|
||||
- [Learn more about the following](https://docs.omnivore.work/using/following.html)
|
||||
|
||||
- [Tell your friends about Omnivore](https://omnivore.app/about)
|
||||
- [Tell your friends about Omnivore](https://omnivore.work/about)
|
||||
|
||||
"""
|
||||
|
||||
|
|
|
|||
|
|
@ -144,7 +144,7 @@
|
|||
.onTapGesture { setSearchTerm("has:highlights") }
|
||||
|
||||
Button(action: {}, label: {
|
||||
Text("[More on Advanced Search](https://docs.omnivore.app/using/search.html)")
|
||||
Text("[More on Advanced Search](https://docs.omnivore.work/using/search.html)")
|
||||
.underline()
|
||||
.padding(.top, 25)
|
||||
})
|
||||
|
|
|
|||
|
|
@ -85,7 +85,7 @@
|
|||
Section {
|
||||
Section {
|
||||
Text("""
|
||||
[Learn more about clubs](https://blog.omnivore.app/p/dca38ba4-8a74-42cc-90ca-d5ffa5d075cc)
|
||||
[Learn more about clubs](https://blog.omnivore.work/p/dca38ba4-8a74-42cc-90ca-d5ffa5d075cc)
|
||||
""")
|
||||
.accentColor(.blue)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -151,7 +151,7 @@ struct ProfileView: View {
|
|||
Section {
|
||||
Button(
|
||||
action: {
|
||||
if let url = URL(string: "https://docs.omnivore.app") {
|
||||
if let url = URL(string: "https://docs.omnivore.work") {
|
||||
openURL(url)
|
||||
}
|
||||
},
|
||||
|
|
@ -187,7 +187,7 @@ struct ProfileView: View {
|
|||
Section {
|
||||
Button(
|
||||
action: {
|
||||
if let url = URL(string: "https://omnivore.app/privacy") {
|
||||
if let url = URL(string: "https://omnivore.work/privacy") {
|
||||
openURL(url)
|
||||
}
|
||||
},
|
||||
|
|
@ -196,7 +196,7 @@ struct ProfileView: View {
|
|||
|
||||
Button(
|
||||
action: {
|
||||
if let url = URL(string: "https://omnivore.app/terms") {
|
||||
if let url = URL(string: "https://omnivore.work/terms") {
|
||||
openURL(url)
|
||||
}
|
||||
},
|
||||
|
|
|
|||
|
|
@ -132,7 +132,7 @@
|
|||
Text("""
|
||||
\(LocalText.clubsAdminDenyViewing)
|
||||
|
||||
[Learn more about clubs](https://blog.omnivore.app/p/dca38ba4-8a74-42cc-90ca-d5ffa5d075cc)
|
||||
[Learn more about clubs](https://blog.omnivore.work/p/dca38ba4-8a74-42cc-90ca-d5ffa5d075cc)
|
||||
""")
|
||||
.accentColor(.blue)
|
||||
} else if viewModel.nonAdmins.count > 0 {
|
||||
|
|
@ -147,7 +147,7 @@
|
|||
Text("""
|
||||
\(LocalText.clubsNoMembers)
|
||||
|
||||
[Learn more about clubs](https://blog.omnivore.app/p/dca38ba4-8a74-42cc-90ca-d5ffa5d075cc)
|
||||
[Learn more about clubs](https://blog.omnivore.work/p/dca38ba4-8a74-42cc-90ca-d5ffa5d075cc)
|
||||
""")
|
||||
.accentColor(.blue)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ struct SelfHostSettingsView: View {
|
|||
ScrollView {
|
||||
VStack {
|
||||
Text("API Server Base URL").frame(maxWidth: .infinity, alignment: .leading)
|
||||
TextField("URL", text: $apiServerAddress, prompt: Text("https://api-prod.omnivore.app"))
|
||||
TextField("URL", text: $apiServerAddress, prompt: Text("https://api-prod.omnivore.work"))
|
||||
.autocorrectionDisabled(true)
|
||||
#if os(iOS)
|
||||
.keyboardType(.URL)
|
||||
|
|
@ -64,7 +64,7 @@ struct SelfHostSettingsView: View {
|
|||
#endif
|
||||
|
||||
Text("Web Server URL").frame(maxWidth: .infinity, alignment: .leading)
|
||||
TextField("URL", text: $webServerAddress, prompt: Text("https://omnivore.app"))
|
||||
TextField("URL", text: $webServerAddress, prompt: Text("https://omnivore.work"))
|
||||
.autocorrectionDisabled(true)
|
||||
#if os(iOS)
|
||||
.keyboardType(.URL)
|
||||
|
|
@ -72,7 +72,7 @@ struct SelfHostSettingsView: View {
|
|||
#endif
|
||||
|
||||
Text("Text-to-speech Server URL").frame(maxWidth: .infinity, alignment: .leading)
|
||||
TextField("URL", text: $ttsServerAddress, prompt: Text("https://tts.omnivore.app"))
|
||||
TextField("URL", text: $ttsServerAddress, prompt: Text("https://tts.omnivore.work"))
|
||||
.autocorrectionDisabled(true)
|
||||
#if os(iOS)
|
||||
.keyboardType(.URL)
|
||||
|
|
@ -85,15 +85,15 @@ struct SelfHostSettingsView: View {
|
|||
If you have chosen to deploy your own server instance, fill in the \
|
||||
above fields to connect to your private self-hosted instance.
|
||||
|
||||
[Learn more about self-hosting Omnivore](https://docs.omnivore.app/self-hosting/self-hosting.html)
|
||||
[Learn more about self-hosting Omnivore](https://docs.omnivore.work/self-hosting/self-hosting.html)
|
||||
""")
|
||||
.accentColor(.blue)
|
||||
.frame(maxWidth: .infinity, alignment: .leading)
|
||||
|
||||
Button(action: {
|
||||
AppEnvironment.setCustom(serverBaseURL: "https://api-prod.omnivore.app",
|
||||
webAppBaseURL: "https://omnivore.app",
|
||||
ttsBaseURL: "https://tts.omnivore.app")
|
||||
AppEnvironment.setCustom(serverBaseURL: "https://api-prod.omnivore.work",
|
||||
webAppBaseURL: "https://omnivore.work",
|
||||
ttsBaseURL: "https://tts.omnivore.work")
|
||||
dataService.switchAppEnvironment(appEnvironment: AppEnvironment.prod)
|
||||
dismiss()
|
||||
}, label: {
|
||||
|
|
|
|||
|
|
@ -166,7 +166,7 @@
|
|||
Text("""
|
||||
\(LocalText.clubsNoneJoined)
|
||||
|
||||
[Learn more about clubs](https://blog.omnivore.app/p/dca38ba4-8a74-42cc-90ca-d5ffa5d075cc)
|
||||
[Learn more about clubs](https://blog.omnivore.work/p/dca38ba4-8a74-42cc-90ca-d5ffa5d075cc)
|
||||
""")
|
||||
.accentColor(.blue)
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -135,40 +135,40 @@ struct WebReaderContainerView: View {
|
|||
}
|
||||
|
||||
#if os(iOS)
|
||||
var audioNavbarItem: some View {
|
||||
if audioController.isLoadingItem(audioController.itemAudioProperties) {
|
||||
return AnyView(ProgressView()
|
||||
.padding(.horizontal))
|
||||
} else {
|
||||
return AnyView(
|
||||
Button(
|
||||
action: {
|
||||
switch audioController.state {
|
||||
case .playing:
|
||||
if audioController.itemAudioProperties?.itemID == self.item.unwrappedID {
|
||||
audioController.pause()
|
||||
return
|
||||
}
|
||||
fallthrough
|
||||
case .paused:
|
||||
if audioController.itemAudioProperties?.itemID == self.item.unwrappedID {
|
||||
audioController.unpause()
|
||||
return
|
||||
}
|
||||
fallthrough
|
||||
default:
|
||||
audioController.play(itemAudioProperties: item.audioProperties)
|
||||
}
|
||||
},
|
||||
label: {
|
||||
textToSpeechButtonImage
|
||||
}
|
||||
)
|
||||
.buttonStyle(.plain)
|
||||
.padding(.trailing, 4)
|
||||
)
|
||||
}
|
||||
}
|
||||
// var audioNavbarItem: some View {
|
||||
// if audioController.isLoadingItem(audioController.itemAudioProperties) {
|
||||
// return AnyView(ProgressView()
|
||||
// .padding(.horizontal))
|
||||
// } else {
|
||||
// return AnyView(
|
||||
// Button(
|
||||
// action: {
|
||||
// switch audioController.state {
|
||||
// case .playing:
|
||||
// if audioController.itemAudioProperties?.itemID == self.item.unwrappedID {
|
||||
// audioController.pause()
|
||||
// return
|
||||
// }
|
||||
// fallthrough
|
||||
// case .paused:
|
||||
// if audioController.itemAudioProperties?.itemID == self.item.unwrappedID {
|
||||
// audioController.unpause()
|
||||
// return
|
||||
// }
|
||||
// fallthrough
|
||||
// default:
|
||||
// audioController.play(itemAudioProperties: item.audioProperties)
|
||||
// }
|
||||
// },
|
||||
// label: {
|
||||
// textToSpeechButtonImage
|
||||
// }
|
||||
// )
|
||||
// .buttonStyle(.plain)
|
||||
// .padding(.trailing, 4)
|
||||
// )
|
||||
// }
|
||||
// }
|
||||
|
||||
var textToSpeechButtonImage: some View {
|
||||
if audioController.playbackError || audioController.state == .stopped || audioController.itemAudioProperties?.itemID != self.item.id {
|
||||
|
|
@ -280,7 +280,7 @@ struct WebReaderContainerView: View {
|
|||
|
||||
Spacer()
|
||||
#endif
|
||||
|
||||
//
|
||||
// Button(
|
||||
// action: { showExplainSheet = true },
|
||||
// label: { Image(systemName: "sparkles") }
|
||||
|
|
@ -289,7 +289,8 @@ struct WebReaderContainerView: View {
|
|||
// .padding(.trailing, 4)
|
||||
|
||||
Button(
|
||||
action: { showLabelsModal = true },
|
||||
action: {
|
||||
showLabelsModal = true },
|
||||
label: {
|
||||
Image.label
|
||||
}
|
||||
|
|
@ -307,7 +308,7 @@ struct WebReaderContainerView: View {
|
|||
.padding(.trailing, 4)
|
||||
|
||||
#if os(iOS)
|
||||
audioNavbarItem
|
||||
// audioNavbarItem
|
||||
|
||||
Button(
|
||||
action: {
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ struct SafariWebLink: Identifiable {
|
|||
|
||||
func hasOriginalUrl(_ item: Models.LibraryItem) -> Bool {
|
||||
if let pageURLString = item.pageURLString, let host = URL(string: pageURLString)?.host {
|
||||
if host == "omnivore.app" {
|
||||
if host == "omnivore.work" {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ struct WelcomeView: View {
|
|||
#if os(iOS)
|
||||
showAboutPage = true
|
||||
#else
|
||||
if let url = URL(string: "https://omnivore.app/about") {
|
||||
if let url = URL(string: "https://omnivore.work/about") {
|
||||
NSWorkspace.shared.open(url)
|
||||
}
|
||||
#endif
|
||||
|
|
@ -147,7 +147,7 @@ struct WelcomeView: View {
|
|||
}
|
||||
}
|
||||
.sheet(isPresented: $showAboutPage) {
|
||||
if let url = URL(string: "https://omnivore.app/about") {
|
||||
if let url = URL(string: "https://omnivore.work/about") {
|
||||
SafariView(url: url)
|
||||
.ignoresSafeArea(.all, edges: .bottom)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,16 +21,16 @@ public enum AppEnvironment: String {
|
|||
}()
|
||||
}
|
||||
|
||||
private let devBaseURL = "https://api-dev.omnivore.app"
|
||||
private let demoBaseURL = "https://api-demo.omnivore.app"
|
||||
private let prodBaseURL = "https://api-prod.omnivore.app"
|
||||
private let devBaseURL = "https://api-dev.omnivore.work"
|
||||
private let demoBaseURL = "https://api-demo.omnivore.work"
|
||||
private let prodBaseURL = "https://api-prod.omnivore.work"
|
||||
|
||||
private let demoTtsURL = "https://tts-demo.omnivore.app"
|
||||
private let prodTtsURL = "https://tts-prod.omnivore.app"
|
||||
private let demoTtsURL = "https://tts-demo.omnivore.work"
|
||||
private let prodTtsURL = "https://tts-prod.omnivore.work"
|
||||
|
||||
private let devWebURL = "https://web-dev.omnivore.app"
|
||||
private let demoWebURL = "https://demo.omnivore.app"
|
||||
private let prodWebURL = "https://omnivore.app"
|
||||
private let devWebURL = "https://web-dev.omnivore.work"
|
||||
private let demoWebURL = "https://demo.omnivore.work"
|
||||
private let prodWebURL = "https://omnivore.work"
|
||||
|
||||
public enum AppEnvironmentUserDefaultKey: String {
|
||||
case serverBaseURL = "AppEnvironment_serverBaseURL"
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ public class PersistentContainer: NSPersistentContainer {
|
|||
#if os(iOS)
|
||||
let appGroupID = "group.app.omnivoreapp"
|
||||
#else
|
||||
let appGroupID = "QJF2XZ86HB.app.omnivore.app"
|
||||
let appGroupID = "QJF2XZ86HB.app.omnivore.work"
|
||||
#endif
|
||||
let appGroupContainer = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: appGroupID)
|
||||
return appGroupContainer?.appendingPathComponent(DatabaseFile)
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ public extension LibraryItem {
|
|||
switch host {
|
||||
case "storage.googleapis.com":
|
||||
return true
|
||||
case "omnivore.app":
|
||||
case "omnivore.work":
|
||||
return true
|
||||
default:
|
||||
return false
|
||||
|
|
|
|||
|
|
@ -269,7 +269,7 @@ private extension PageScrapePayload {
|
|||
#if os(iOS)
|
||||
let appGroupID = "group.app.omnivoreapp"
|
||||
#else
|
||||
let appGroupID = "QJF2XZ86HB.app.omnivore.app"
|
||||
let appGroupID = "QJF2XZ86HB.app.omnivore.work"
|
||||
#endif
|
||||
return FileManager.default.containerURL(
|
||||
forSecurityApplicationGroupIdentifier: appGroupID
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ public struct FeaturePrimer: View {
|
|||
|
||||
*During the beta you can create a max of three clubs. Club sizes are limited to 12 people.*
|
||||
|
||||
[Learn more about clubs](https://blog.omnivore.app/p/dca38ba4-8a74-42cc-90ca-d5ffa5d075cc)
|
||||
[Learn more about clubs](https://blog.omnivore.work/p/dca38ba4-8a74-42cc-90ca-d5ffa5d075cc)
|
||||
|
||||
"""
|
||||
)
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import Foundation
|
|||
|
||||
func cardShouldHideUrl(_ url: String?) -> Bool {
|
||||
if let url = url, let origin = URL(string: url)?.host {
|
||||
let hideHosts = ["storage.googleapis.com", "omnivore.app"]
|
||||
let hideHosts = ["storage.googleapis.com", "omnivore.work"]
|
||||
if hideHosts.contains(origin) {
|
||||
return true
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -42,7 +42,7 @@
|
|||
// Push Notification Settings
|
||||
"notificationsEnabled" = "Benachrichtigungen aktiviert";
|
||||
"notificationsExplainer" = "Das Aktivieren von Push-Benachrichtigungen gibt Omnivore die Erlaubnis, Benachrichtigungen zu senden,\ndu entscheidest jedoch, welche Benachrichtigungen gesendet werden.";
|
||||
"notificationsTriggerExplainer" = "Push-Benachrichtigungen werden durch deine \n[Kontoregeln](https://omnivore.app/settings/rules) ausgelöst, die du online bearbeiten kannst.";
|
||||
"notificationsTriggerExplainer" = "Push-Benachrichtigungen werden durch deine \n[Kontoregeln](https://omnivore.work/settings/rules) ausgelöst, die du online bearbeiten kannst.";
|
||||
"notificationsEnable" = "Push-Benachrichtigungen aktivieren?";
|
||||
"notificationsGeneralExplainer" = "Erhalte Benachrichtigungen, wenn Newsletter-Links in deinem Posteingang eintreffen. Oder erhalte Erinnerungen, die du über unsere Erweiterung festgelegt hast.";
|
||||
"notificationsOptionDeny" = "Nein, danke";
|
||||
|
|
@ -205,4 +205,4 @@
|
|||
|
||||
// Unit test Entry -- Do not remove this or add entries after this one.
|
||||
// This allows us to check for syntax errors in this file with a unit test
|
||||
"unitTestTrailingEntry" = "Nur zu Testzwecken.";
|
||||
"unitTestTrailingEntry" = "Nur zu Testzwecken.";
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
// Push Notification Settings
|
||||
"notificationsEnabled" = "Notifications enabled";
|
||||
"notificationsExplainer" = "Enabling push notifications gives Omnivore device permission to send notifications,\nbut you are in charge of which notifications are sent.";
|
||||
"notificationsTriggerExplainer" = "Push notifications are triggered using your \n[account rules](https://omnivore.app/settings/rules) which you can edit online.";
|
||||
"notificationsTriggerExplainer" = "Push notifications are triggered using your \n[account rules](https://omnivore.work/settings/rules) which you can edit online.";
|
||||
"notificationsEnable" = "Enable Push Notifications?";
|
||||
"notificationsGeneralExplainer" = "Get notified when newsletter links reach your inbox. Or receive reminders that you set from our share extension.";
|
||||
"notificationsOptionDeny" = "No Thanks";
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
// Push Notification Settings
|
||||
"notificationsEnabled" = "Notificaciones Habilitadas";
|
||||
"notificationsExplainer" = "Activar las notificaciones Push da permiso para enviar notificaciones al dispositivo donde has instalado Omnivore,\npero tu estás a cargo de qué notificaciones se envían.";
|
||||
"notificationsTriggerExplainer" = "Las notificaciones Push se activan con tus \n[reglas de cuenta](https://omnivore.app/settings/rules), que puedes editar online.";
|
||||
"notificationsTriggerExplainer" = "Las notificaciones Push se activan con tus \n[reglas de cuenta](https://omnivore.work/settings/rules), que puedes editar online.";
|
||||
"notificationsEnable" = "¿Activar Notificaciones Push?";
|
||||
"notificationsGeneralExplainer" = "Recibe una notificación cuando los enlaces de newsletter lleguen a tu bandeja de entrada. O recibe los recordatorios que establezcas desde nuestra extensión para compartir.";
|
||||
"notificationsOptionDeny" = "No, gracias";
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@
|
|||
// Push Notification Settings
|
||||
"notificationsEnabled" = "启用通知";
|
||||
"notificationsExplainer" = "启用推送通知将授予 Omnivore 设备发送通知的权限,但由您负责发送哪些通知。";
|
||||
"notificationsTriggerExplainer" = "推送通知使用您的[账号规则](https://omnivore.app/settings/rules)您可以在线编辑。";
|
||||
"notificationsTriggerExplainer" = "推送通知使用您的[账号规则](https://omnivore.work/settings/rules)您可以在线编辑。";
|
||||
"notificationsEnable" = "确定启用推送通知?";
|
||||
"notificationsGeneralExplainer" = "当新闻资讯链接到达您的收集箱时收到通知。或者接收您从我们的分享扩展中设置的提醒。";
|
||||
"notificationsOptionDeny" = "不用了";
|
||||
|
|
@ -248,7 +248,7 @@
|
|||
//"filter to inbox, archive, or all" = "筛选到收集箱、存档或全部";
|
||||
//"search for a specific title" = "搜索特定标题";
|
||||
//"any saved read with highlights" = "任何带有荧光笔高亮显示的已保存文章";
|
||||
//"[More on Advanced Search](https://docs.omnivore.app/using/search.html)" = "[了解更多高级搜索](https://docs.omnivore.app/zh/using/search.html)";
|
||||
//"[More on Advanced Search](https://docs.omnivore.work/using/search.html)" = "[了解更多高级搜索](https://docs.omnivore.work/zh/using/search.html)";
|
||||
//
|
||||
//// Views/AudioPlayer/ExpandedPlayer.swift
|
||||
//"Playback Speed (%.1f×)" = "播放速度 (%.1f×)";
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
// Push Notification Settings
|
||||
"notificationsEnabled" = "已啟用通知";
|
||||
"notificationsExplainer" = "啟用推播通知將授予 Omnivore 裝置傳送通知的權限,\n但您可以控制哪些通知被傳送。";
|
||||
"notificationsTriggerExplainer" = "推播通知是由您的\n[帳戶規則](https://omnivore.app/settings/rules) 觸發,您可以在線上編輯。";
|
||||
"notificationsTriggerExplainer" = "推播通知是由您的\n[帳戶規則](https://omnivore.work/settings/rules) 觸發,您可以在線上編輯。";
|
||||
"notificationsEnable" = "啟用推播通知?";
|
||||
"notificationsGeneralExplainer" = "當電子報連結抵達您的收件匣時獲得通知。或從我們的分享擴充功能接收提醒。";
|
||||
"notificationsOptionDeny" = "不,謝謝";
|
||||
|
|
|
|||
|
|
@ -11,15 +11,15 @@ final class UtilsTests: XCTestCase {
|
|||
|
||||
func testNormalizeUrl() {
|
||||
// trailing slash removed
|
||||
XCTAssertEqual(normalizeURL("https://omnivore.app/"), "https://omnivore.app")
|
||||
XCTAssertEqual(normalizeURL("https://omnivore.work/"), "https://omnivore.work")
|
||||
|
||||
// utm_ removed
|
||||
// swiftlint:disable:next line_length
|
||||
XCTAssertEqual(normalizeURL("https://omnivore.app/?aa=a&bb=b&utm_track=track&cc=c"), "https://omnivore.app?aa=a&bb=b&cc=c")
|
||||
XCTAssertEqual(normalizeURL("https://omnivore.work/?aa=a&bb=b&utm_track=track&cc=c"), "https://omnivore.work?aa=a&bb=b&cc=c")
|
||||
|
||||
// query params sorted
|
||||
XCTAssertEqual(normalizeURL("https://omnivore.app/?aa=a&cc=c&bb=b"), "https://omnivore.app?aa=a&bb=b&cc=c")
|
||||
XCTAssertEqual(normalizeURL("https://omnivore.app/?cc=c&bb=b&aa=a"), "https://omnivore.app?aa=a&bb=b&cc=c")
|
||||
XCTAssertEqual(normalizeURL("https://omnivore.work/?aa=a&cc=c&bb=b"), "https://omnivore.work?aa=a&bb=b&cc=c")
|
||||
XCTAssertEqual(normalizeURL("https://omnivore.work/?cc=c&bb=b&aa=a"), "https://omnivore.work?aa=a&bb=b&cc=c")
|
||||
}
|
||||
|
||||
static var allTests = [
|
||||
|
|
|
|||
|
|
@ -67,7 +67,7 @@
|
|||
self.id = UUID(uuidString: item.unwrappedID)!
|
||||
self.title = item.unwrappedTitle
|
||||
self.originalURL = item.pageURLString
|
||||
self.omnivoreWebURL = "https://omnivore.app/me/\(item.slug!)"
|
||||
self.omnivoreWebURL = "https://omnivore.work/me/\(item.slug!)"
|
||||
self.omnivoreShortcutURL = "omnivore://read/\(item.unwrappedID)"
|
||||
self.author = item.author
|
||||
self.siteName = item.siteName
|
||||
|
|
|
|||
|
|
@ -8,10 +8,10 @@
|
|||
"default_locale": "en",
|
||||
"developer": {
|
||||
"name": "Omnivore Media, Inc",
|
||||
"url": "https://omnivore.app/"
|
||||
"url": "https://omnivore.work/"
|
||||
},
|
||||
"homepage_url": "https://omnivore.app/",
|
||||
"content_security_policy": "default-src 'none'; child-src 'none'; manifest-src 'none'; media-src 'none'; object-src 'none'; worker-src 'none'; connect-src https://storage.googleapis.com/ https://api-prod.omnivore.app/api/ blob:; frame-src 'none'; font-src 'none'; img-src data:; script-src 'self'; script-src-elem 'self' 'unsafe-inline'; script-src-attr 'unsafe-inline'; style-src 'self' 'unsafe-inline'; style-src-elem 'self' 'unsafe-inline'; style-src-attr 'none'; base-uri 'none'; form-action 'none'; block-all-mixed-content; upgrade-insecure-requests; report-uri https://api.jeurissen.co/reports/csp/webext/omnivore/",
|
||||
"homepage_url": "https://omnivore.work/",
|
||||
"content_security_policy": "default-src 'none'; child-src 'none'; manifest-src 'none'; media-src 'none'; object-src 'none'; worker-src 'none'; connect-src https://storage.googleapis.com/ https://api-prod.omnivore.work/api/ blob:; frame-src 'none'; font-src 'none'; img-src data:; script-src 'self'; script-src-elem 'self' 'unsafe-inline'; script-src-attr 'unsafe-inline'; style-src 'self' 'unsafe-inline'; style-src-elem 'self' 'unsafe-inline'; style-src-attr 'none'; base-uri 'none'; form-action 'none'; block-all-mixed-content; upgrade-insecure-requests; report-uri https://api.jeurissen.co/reports/csp/webext/omnivore/",
|
||||
"icons": {
|
||||
"16": "/images/extension/icon-16.png",
|
||||
"24": "/images/extension/icon-24.png",
|
||||
|
|
@ -36,12 +36,12 @@
|
|||
"minimum_opera_version": "15",
|
||||
"applications": {
|
||||
"gecko": {
|
||||
"id": "save-extension@omnivore.app"
|
||||
"id": "save-extension@omnivore.work"
|
||||
}
|
||||
},
|
||||
"browser_specific_settings": {
|
||||
"gecko": {
|
||||
"id": "save-extension@omnivore.app"
|
||||
"id": "save-extension@omnivore.work"
|
||||
}
|
||||
},
|
||||
"options_ui": {
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1 +1 @@
|
|||
function saveAPIKey(){var e=document.getElementById("api-key").value;e?setStorage({apiKey:e}).then((()=>{alert("API key saved!")})):alert("No api-key specified, please create an API key at https://omnivore.app/settings/api")}function loadAPIKey(){getStorageItem("apiKey").then((e=>{e?document.getElementById("api-key").value=e:alert("No API key found in storage.")}))}function clearAPIKey(){document.getElementById("api-key").value="",setStorage({apiKey:void 0}).then((()=>{alert("API key cleared!")}))}function autoDismissChanged(e){const t=document.getElementById("disable-auto-dismiss").checked;console.log(" value: ",t,document.getElementById("disable-auto-dismiss")),setStorage({disableAutoDismiss:t?"true":null}).then((()=>{console.log("disableAutoDismiss updated",t)}))}function saveAutoDismissTime(){const e=document.getElementById("auto-dismiss-time").value;e.length<1||Number.isNaN(Number(e))?alert("Invalid value"):setStorage({autoDismissTime:e}).then((()=>{console.log("autoDismissTime updated",e)}))}document.getElementById("save-api-key-btn").addEventListener("click",saveAPIKey),document.getElementById("load-api-key-btn").addEventListener("click",loadAPIKey),document.getElementById("clear-api-key-btn").addEventListener("click",clearAPIKey),getStorageItem("disableAutoDismiss").then((e=>{document.getElementById("disable-auto-dismiss").checked=!!e})),document.getElementById("disable-auto-dismiss").addEventListener("change",autoDismissChanged),getStorageItem("autoDismissTime").then((e=>{document.getElementById("auto-dismiss-time").value=e??"2500"})),document.getElementById("auto-dismiss-time-btn").addEventListener("click",saveAutoDismissTime);
|
||||
function saveAPIKey(){var e=document.getElementById("api-key").value;e?setStorage({apiKey:e}).then((()=>{alert("API key saved!")})):alert("No api-key specified, please create an API key at https://omnivore.work/settings/api")}function loadAPIKey(){getStorageItem("apiKey").then((e=>{e?document.getElementById("api-key").value=e:alert("No API key found in storage.")}))}function clearAPIKey(){document.getElementById("api-key").value="",setStorage({apiKey:void 0}).then((()=>{alert("API key cleared!")}))}function autoDismissChanged(e){const t=document.getElementById("disable-auto-dismiss").checked;console.log(" value: ",t,document.getElementById("disable-auto-dismiss")),setStorage({disableAutoDismiss:t?"true":null}).then((()=>{console.log("disableAutoDismiss updated",t)}))}function saveAutoDismissTime(){const e=document.getElementById("auto-dismiss-time").value;e.length<1||Number.isNaN(Number(e))?alert("Invalid value"):setStorage({autoDismissTime:e}).then((()=>{console.log("autoDismissTime updated",e)}))}document.getElementById("save-api-key-btn").addEventListener("click",saveAPIKey),document.getElementById("load-api-key-btn").addEventListener("click",loadAPIKey),document.getElementById("clear-api-key-btn").addEventListener("click",clearAPIKey),getStorageItem("disableAutoDismiss").then((e=>{document.getElementById("disable-auto-dismiss").checked=!!e})),document.getElementById("disable-auto-dismiss").addEventListener("change",autoDismissChanged),getStorageItem("autoDismissTime").then((e=>{document.getElementById("auto-dismiss-time").value=e??"2500"})),document.getElementById("auto-dismiss-time-btn").addEventListener("click",saveAutoDismissTime);
|
||||
|
|
|
|||
|
|
@ -64,8 +64,8 @@
|
|||
|
||||
<div id="consent-container">
|
||||
<h1>Omnivore</h1>
|
||||
<p class="consent-text">Thank you for installing the <a href="https://omnivore.app">Omnivore</a> Firefox extension. Use this extension to save links to your Omnivore library.</p>
|
||||
<p class="consent-text">If you are not familiar with Omnivore, you can learn more about us by reading <a href="https://blog.omnivore.app/p/getting-started-with-omnivore">Getting Started with Omnivore</a></p>
|
||||
<p class="consent-text">Thank you for installing the <a href="https://omnivore.work">Omnivore</a> Firefox extension. Use this extension to save links to your Omnivore library.</p>
|
||||
<p class="consent-text">If you are not familiar with Omnivore, you can learn more about us by reading <a href="https://blog.omnivore.work/p/getting-started-with-omnivore">Getting Started with Omnivore</a></p>
|
||||
|
||||
<p class="consent-text"> </p>
|
||||
|
||||
|
|
@ -76,9 +76,9 @@
|
|||
<p class="consent-text">Omnivore uses the following data:</p>
|
||||
<ul>
|
||||
<li><b>Tab Data</b>: When you invoke the extension, we access the content of the page you are currently viewing. This allows us to save the full content of the page, exactly how you are viewing it. That data is then transmitted to our servers and added to your library</li>
|
||||
<li><b>Authentication cookie</b>: When you invoke the extension we access the auth cookie you used to authenticate at <a href="https://omnivore.app">https://omnivore.app</a>. This cookie identifies you as an Omnivore user and ties the saving operation to your Omnivore account.</li>
|
||||
<li><b>Authentication cookie</b>: When you invoke the extension we access the auth cookie you used to authenticate at <a href="https://omnivore.work">https://omnivore.work</a>. This cookie identifies you as an Omnivore user and ties the saving operation to your Omnivore account.</li>
|
||||
</ul>
|
||||
<p class="consent-text">For full details about the data we collect you can read our <a href="https://docs.omnivore.app/about/privacy-statement.html">privacy statement</a></p>
|
||||
<p class="consent-text">For full details about the data we collect you can read our <a href="https://docs.omnivore.work/about/privacy-statement.html">privacy statement</a></p>
|
||||
|
||||
<label for="consent-checkbox">
|
||||
<input type="checkbox" id="consent-checkbox"> I consent to data collection
|
||||
|
|
|
|||
|
|
@ -10,14 +10,14 @@
|
|||
<h1>API Key</h1>
|
||||
|
||||
<p>Normally Omnivore uses an authentication cookie that is set when
|
||||
you log in at <a href='https://omnivore.app'>omnivore.app</a>. If
|
||||
you log in at <a href='https://omnivore.work'>omnivore.work</a>. If
|
||||
your security settings do not allow the extension to access this
|
||||
cookie (for example if you are using containers), you can set an
|
||||
API token in the extension's local storage instead.
|
||||
</p>
|
||||
|
||||
<p>To do this, create an API key at
|
||||
<a href='https://omnivore.app/settings/api'>omnivore.app/settings/api</a>,
|
||||
<a href='https://omnivore.work/settings/api'>omnivore.work/settings/api</a>,
|
||||
paste it into the textbox below, and choose 'Save API Key'.
|
||||
</p>
|
||||
|
||||
|
|
@ -49,4 +49,4 @@
|
|||
</div>
|
||||
<script src="/scripts/options.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ services:
|
|||
context: .
|
||||
dockerfile: ./packages/db/Dockerfile
|
||||
container_name: "omnivore-migrate-test"
|
||||
command: '/bin/sh ./packages/db/setup.sh' # Also create a demo user with email: demo@omnivore.app, password: demo
|
||||
command: '/bin/sh ./packages/db/setup.sh' # Also create a demo user with email: demo@omnivore.work, password: demo
|
||||
environment:
|
||||
- PGPASSWORD=postgres
|
||||
- PG_HOST=postgres-test
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ services:
|
|||
context: .
|
||||
dockerfile: ./packages/db/Dockerfile
|
||||
container_name: "omnivore-migrate"
|
||||
command: '/bin/sh ./packages/db/setup.sh' # Also create a demo user with email: demo@omnivore.app, password: demo_password
|
||||
command: '/bin/sh ./packages/db/setup.sh' # Also create a demo user with email: demo@omnivore.work, password: demo_password
|
||||
environment:
|
||||
- PGPASSWORD=postgres
|
||||
- POSTGRES_USER=postgres
|
||||
|
|
|
|||
|
|
@ -36,10 +36,10 @@
|
|||
|
||||
1 - قم بتحميل وتثبيت إضافة أومنيفور لمتصفحك:
|
||||
|
||||
- [كروم ](https://omnivore.app/install/chrome)
|
||||
- [ايدج](https://omnivore.app/install/edge)
|
||||
- [فاير فوكس](https://omnivore.app/install/firefox)
|
||||
- [سفري](https://omnivore.app/install/safari)
|
||||
- [كروم ](https://omnivore.work/install/chrome)
|
||||
- [ايدج](https://omnivore.work/install/edge)
|
||||
- [فاير فوكس](https://omnivore.work/install/firefox)
|
||||
- [سفري](https://omnivore.work/install/safari)
|
||||
|
||||
2 -انتقل إلى الصفحة التي ترغب في حفظها وانقر على زر أومنيفور في شريط أدوات المتصفح أو قائمة الإضافات.
|
||||
3 - أو بدلاً عن ذلك يمكنك النقر بزر فأرة الحاسوب الأيمن على أي رابط تشعبي أو اختر **حفظ إلى أمنيفور** من القائمة.
|
||||
|
|
@ -51,7 +51,7 @@
|
|||
أفضل طريقة لحفظ الروابط من جهازك المحمول هي عبر تطبيق أمنيفور. يمكنك تحميل التطبيق هنا:
|
||||
|
||||
|
||||
أي أو إس (ايباد أو أيفون) (https://omnivore.app/install/ios)
|
||||
أي أو إس (ايباد أو أيفون) (https://omnivore.work/install/ios)
|
||||
أندرويد
|
||||
|
||||
|
||||
|
|
@ -66,7 +66,7 @@
|
|||
|
||||
1 - على موقع أو تطبيق أومنيفور، اضغط على صورتك أو الحروف الأولى أو الصورة الرمزية في الزاوية العليا اليمنى للوصول إلى قائمة الملف الشخصي.
|
||||
اختر البريد الإلكتروني من القائمة.
|
||||
2 - اضغط على إنشاء عنوان بريد إلكتروني جديد لإضافة عنوان بريد إلكتروني جديد (مثل: username-123_abc@inbox.omnivore.app) إلى القائمة.
|
||||
2 - اضغط على إنشاء عنوان بريد إلكتروني جديد لإضافة عنوان بريد إلكتروني جديد (مثل: username-123_abc@inbox.omnivore.work) إلى القائمة.
|
||||
3 - انقر على أيقونة النسخ بجوار عنوان البريد الإلكتروني
|
||||
4 - انتقل إلى صفحة التسجيل للنشرةgetting-started-guide.md الإخبارية التي ترغب في الاشتراك فيها
|
||||
5 - الصق عنوان البريد الإلكتروني أومنيفور في نموذج التسجيل
|
||||
|
|
@ -75,7 +75,7 @@
|
|||
|
||||
### حفظ ملفات البي دي إيف من جهاز الماك
|
||||
|
||||
1 - قم بتثبيت تطبيقة الماك(https://omnivore.app/install/mac)
|
||||
1 - قم بتثبيت تطبيقة الماك(https://omnivore.work/install/mac)
|
||||
2 - قم بتحديد موقع ملف البي دي إف الذي ترغب في حفظه ثم انقر على إسم الملف بالزر الايمن من فأرة الحاسوب
|
||||
3 - اختر شارك من القائمة واختر أومنيفور
|
||||
4 - سيظهر الرابط في مكتبتك عندما تقوم بتحديثها في المرة القادمة
|
||||
|
|
@ -150,7 +150,7 @@
|
|||
### البحث
|
||||
|
||||
1 - للبحث في جميع الروابط التي قمت بحفظها، أدخل كلمة أو عبارة في شريط البحث
|
||||
2 - يمكنك دمج الكلمات الرئيسية مع التسميات والفلاتر لتركيز بحثك بشكل أكبر[تعرف اكثر على البحث المتقدم ](https://docs.omnivore.app/using/searcl)
|
||||
2 - يمكنك دمج الكلمات الرئيسية مع التسميات والفلاتر لتركيز بحثك بشكل أكبر[تعرف اكثر على البحث المتقدم ](https://docs.omnivore.work/using/searcl)
|
||||
|
||||
|
||||
### الفيلتر
|
||||
|
|
|
|||
|
|
@ -31,10 +31,10 @@ Omnivore 是一个**稍后阅读应用** ,让你保存和整理你在网上阅
|
|||
|
||||
1. 下载并安装浏览器的 Omnivore 扩展程序:
|
||||
|
||||
- [Chrome ](https://omnivore.app/install/chrome)
|
||||
- [Edge](https://omnivore.app/install/edge)
|
||||
- [Firefox](https://omnivore.app/install/firefox)
|
||||
- [Safari](https://omnivore.app/install/safari)
|
||||
- [Chrome ](https://omnivore.work/install/chrome)
|
||||
- [Edge](https://omnivore.work/install/edge)
|
||||
- [Firefox](https://omnivore.work/install/firefox)
|
||||
- [Safari](https://omnivore.work/install/safari)
|
||||
|
||||
2. 导航到您要保存的页面,然后点击浏览器工具栏或扩展菜单中的 Omnivore 按钮。
|
||||
3. 或者,您可以在任何超链接上右键单击(Mac:command+click),然后从菜单中选择 **保存到 Omnivore**。
|
||||
|
|
@ -44,7 +44,7 @@ Omnivore 是一个**稍后阅读应用** ,让你保存和整理你在网上阅
|
|||
|
||||
从移动设备保存链接的最佳方法是通过 Omnivore 应用程序。您可以在此处下载此应用程序:
|
||||
|
||||
- [iOS (iPhone 或 iPad)](https://omnivore.app/install/ios)
|
||||
- [iOS (iPhone 或 iPad)](https://omnivore.work/install/ios)
|
||||
- Android
|
||||
|
||||
安装移动应用程序后:
|
||||
|
|
@ -56,7 +56,7 @@ Omnivore 是一个**稍后阅读应用** ,让你保存和整理你在网上阅
|
|||
### 通过电子邮件订阅新闻稿件
|
||||
|
||||
1. 在 Omnivore 网站或应用程序上,点击右上角的照片、首字母或头像以访问个人资料菜单。从菜单中选择 **电子邮件**。
|
||||
2. 点击**创建新电子邮件地址**将新电子邮件地址 (例如: username-123_abc@inbox.omnivore.app) 添加到列表中。
|
||||
2. 点击**创建新电子邮件地址**将新电子邮件地址 (例如: username-123_abc@inbox.omnivore.work) 添加到列表中。
|
||||
3. 点按电子邮件地址旁边的拷贝图标。
|
||||
4. 导航到您想要订阅的新闻稿件的注册页面。
|
||||
5. 将 Omnivore 电子邮件地址粘贴到注册表中。
|
||||
|
|
@ -64,7 +64,7 @@ Omnivore 是一个**稍后阅读应用** ,让你保存和整理你在网上阅
|
|||
|
||||
### 从 Mac 保存 PDF
|
||||
|
||||
1. 安装 [Mac 应用程序](https://omnivore.app/install/mac)。
|
||||
1. 安装 [Mac 应用程序](https://omnivore.work/install/mac)。
|
||||
2. 在 Mac 上,找到要保存的 PDF,然后右键单击或 ctrl + 单击 文件名。
|
||||
3. 从菜单中选择 **共享**,然后选择 **Omnivore**。
|
||||
4. 下次刷新链接时,该链接将显示在您的文库中。
|
||||
|
|
@ -135,7 +135,7 @@ Omnivore 自动跟踪您在不同设备上的阅读进度,以便您可以轻
|
|||
### 搜索
|
||||
|
||||
1. 要搜索所有已保存的链接,请在搜索栏中输入关键字或短语。
|
||||
2. 您可以将关键字与标签和筛选器结合使用,以进一步集中搜索。 [了解有关高级搜索的更多信息](https://docs.omnivore.app/using/search.html)。
|
||||
2. 您可以将关键字与标签和筛选器结合使用,以进一步集中搜索。 [了解有关高级搜索的更多信息](https://docs.omnivore.work/using/search.html)。
|
||||
|
||||
### 筛选器 (过滤器)
|
||||
|
||||
|
|
|
|||
|
|
@ -31,10 +31,10 @@ Es gibt fünf grundlegende Arten, um Links zu Seiten oder Artikeln zu speichern,
|
|||
|
||||
1. Laden Sie die Omnivore-Erweiterung für Ihren Browser herunter und installieren Sie sie:
|
||||
|
||||
- [Chrome](https://omnivore.app/install/chrome)
|
||||
- [Edge](https://omnivore.app/install/edge)
|
||||
- [Firefox](https://omnivore.app/install/firefox)
|
||||
- [Safari](https://omnivore.app/install/safari)
|
||||
- [Chrome](https://omnivore.work/install/chrome)
|
||||
- [Edge](https://omnivore.work/install/edge)
|
||||
- [Firefox](https://omnivore.work/install/firefox)
|
||||
- [Safari](https://omnivore.work/install/safari)
|
||||
|
||||
2. Navigieren Sie zu der Seite, die Sie speichern möchten, und klicken Sie auf die Omnivore-Schaltfläche in Ihrer Browser-Symbolleiste oder im Erweiterungen-Menü.
|
||||
3. Alternativ können Sie mit der rechten Maustaste (Befehl+Klick auf dem Mac) auf einen beliebigen Hyperlink klicken und **Zu Omnivore hinzufügen** aus dem Menü auswählen.
|
||||
|
|
@ -44,7 +44,7 @@ Es gibt fünf grundlegende Arten, um Links zu Seiten oder Artikeln zu speichern,
|
|||
|
||||
Die beste Möglichkeit, Links von Ihrem mobilen Gerät zu speichern, besteht über die Omnivore-App. Sie können die App hier herunterladen:
|
||||
|
||||
- [iOS (iPhone oder iPad)](https://omnivore.app/install/ios)
|
||||
- [iOS (iPhone oder iPad)](https://omnivore.work/install/ios)
|
||||
- Android
|
||||
|
||||
Nachdem die mobile App installiert ist:
|
||||
|
|
@ -56,7 +56,7 @@ Nachdem die mobile App installiert ist:
|
|||
### Newsletter-Abonnements per E-Mail
|
||||
|
||||
1. Klicken Sie auf der Omnivore-Website oder App auf Ihr Foto, Ihre Initialen oder Ihr Avatar in der oberen rechten Ecke, um das Profilmenü zu öffnen. Wählen Sie **E-Mails** aus dem Menü.
|
||||
2. Klicken Sie auf **Neue E-Mail-Adresse erstellen**, um eine neue E-Mail-Adresse (z.B. username-123_abc@inbox.omnivore.app) zur Liste hinzuzufügen.
|
||||
2. Klicken Sie auf **Neue E-Mail-Adresse erstellen**, um eine neue E-Mail-Adresse (z.B. username-123_abc@inbox.omnivore.work) zur Liste hinzuzufügen.
|
||||
3. Klicken Sie auf das Kopier-Symbol neben der E-Mail-Adresse.
|
||||
4. Navigieren Sie zur Anmeldeseite des Newsletters, den Sie abonnieren möchten.
|
||||
5. Fügen Sie die Omnivore-E-Mail-Adresse in das Anmeldeformular ein.
|
||||
|
|
@ -64,7 +64,7 @@ Nachdem die mobile App installiert ist:
|
|||
|
||||
### PDFs von einem Mac speichern
|
||||
|
||||
1. Installieren Sie die [Mac App](https://omnivore.app/install/mac).
|
||||
1. Installieren Sie die [Mac App](https://omnivore.work/install/mac).
|
||||
2. Suchen Sie auf Ihrem Mac das PDF, das Sie speichern möchten und klicken Sie mit der rechten Maustaste oder Strg+Klick auf den Dateinamen.
|
||||
3. Wählen Sie **Teilen** aus dem Menü und wählen Sie **Omnivore**.
|
||||
4. Der Link wird beim nächsten Aktualisieren in Ihrer Bibliothek angezeigt
|
||||
|
|
@ -161,7 +161,7 @@ Standardmäßig zeigt der Posteingang der Bibliothek alle gespeicherten Links an
|
|||
|
||||
1. Um in all Ihren gespeicherten Links zu suchen, geben Sie ein Schlüsselwort oder eine Phrase in die Suchleiste ein.
|
||||
|
||||
2. Sie können Schlüsselworte mit Labels und Filtern kombinieren, um Ihre Suche noch weiter zu fokussieren. [Erfahren Sie mehr über die erweiterte Suche](https://docs.omnivore.app/using/search.html).
|
||||
2. Sie können Schlüsselworte mit Labels und Filtern kombinieren, um Ihre Suche noch weiter zu fokussieren. [Erfahren Sie mehr über die erweiterte Suche](https://docs.omnivore.work/using/search.html).
|
||||
|
||||
|
||||
### Filter
|
||||
|
|
@ -197,4 +197,4 @@ Mit dem Omnivore's Logseq-Plugin können Sie alle Ihre gespeicherten Artikel, Hi
|
|||
### Webhooks
|
||||
|
||||
|
||||
Omnivore kann Webhooks auslösen, wenn Sie einen Link speichern oder Highlights zu einer Seite hinzufügen, die Sie gerade lesen. [Dieses Beispiel](https://briansunter.com/graph/#/page/omnivore-logseq-guide) zeigt, wie Webhooks verwendet werden, um alle gespeicherten Links in eine Google Sheets-Tabelle zu schreiben, die auf einem Google Drive gespeichert ist.
|
||||
Omnivore kann Webhooks auslösen, wenn Sie einen Link speichern oder Highlights zu einer Seite hinzufügen, die Sie gerade lesen. [Dieses Beispiel](https://briansunter.com/graph/#/page/omnivore-logseq-guide) zeigt, wie Webhooks verwendet werden, um alle gespeicherten Links in eine Google Sheets-Tabelle zu schreiben, die auf einem Google Drive gespeichert ist.
|
||||
|
|
|
|||
|
|
@ -31,10 +31,10 @@ There are five main ways to save links to pages or articles that you wish to rea
|
|||
|
||||
1. Download and install the Omnivore extension for your browser:
|
||||
|
||||
- [Chrome ](https://omnivore.app/install/chrome)
|
||||
- [Edge](https://omnivore.app/install/edge)
|
||||
- [Firefox](https://omnivore.app/install/firefox)
|
||||
- [Safari](https://omnivore.app/install/safari)
|
||||
- [Chrome ](https://omnivore.work/install/chrome)
|
||||
- [Edge](https://omnivore.work/install/edge)
|
||||
- [Firefox](https://omnivore.work/install/firefox)
|
||||
- [Safari](https://omnivore.work/install/safari)
|
||||
|
||||
2. Navigate to the page you wish to save and tap the Omnivore button in your browser’s toolbar or Extensions menu.
|
||||
3. Alternatively, you can right-click (command+click on Mac) on any hyperlink and select **Save to Omnivore** from the menu.
|
||||
|
|
@ -44,7 +44,7 @@ There are five main ways to save links to pages or articles that you wish to rea
|
|||
|
||||
The best way to save links from your mobile device is via the Omnivore app. You can download the app here:
|
||||
|
||||
- [iOS (iPhone or iPad)](https://omnivore.app/install/ios)
|
||||
- [iOS (iPhone or iPad)](https://omnivore.work/install/ios)
|
||||
- Android
|
||||
|
||||
Once the mobile app is installed:
|
||||
|
|
@ -56,7 +56,7 @@ Once the mobile app is installed:
|
|||
### Newsletter Subscriptions via Email
|
||||
|
||||
1. On the Omnivore website or app, tap your photo, initial, or avatar in the top right corner to access the profile menu. Select **Emails** from the menu.
|
||||
2. Tap **Create a New Email Address** to add a new email address (ex: username-123_abc@inbox.omnivore.app) to the list.
|
||||
2. Tap **Create a New Email Address** to add a new email address (ex: username-123_abc@inbox.omnivore.work) to the list.
|
||||
3. Click the Copy icon next to the email address.
|
||||
4. Navigate to the signup page for the newsletter you wish to subscribe to. \
|
||||
5. Paste the Omnivore email address into the signup form.
|
||||
|
|
@ -64,7 +64,7 @@ Once the mobile app is installed:
|
|||
|
||||
### Saving PDFs from a Mac
|
||||
|
||||
1. Install the [Mac App](https://omnivore.app/install/mac).
|
||||
1. Install the [Mac App](https://omnivore.work/install/mac).
|
||||
2. On your Mac, locate the PDF you wish to save and right-click or ctrl+click on the file name.
|
||||
3. Select **Share** from the menu and choose **Omnivore**.
|
||||
4. The link will appear in your Library the next time you refresh it.
|
||||
|
|
@ -135,7 +135,7 @@ By default, the Library inbox displays all links you have saved. To manage your
|
|||
### Search
|
||||
|
||||
1. To search through all your saved links, enter a keyword or phrase in the search bar.
|
||||
2. You can combine keywords with labels and filters to focus your search even further. [Learn more about advanced search](https://docs.omnivore.app/using/search.html).
|
||||
2. You can combine keywords with labels and filters to focus your search even further. [Learn more about advanced search](https://docs.omnivore.work/using/search.html).
|
||||
|
||||
### Filters
|
||||
|
||||
|
|
|
|||
|
|
@ -31,10 +31,10 @@ Hay cinco formas principales de guardar los enlaces a páginas o artículos que
|
|||
|
||||
1. Descarga e instala la extensión Omnivore para tu navegador:
|
||||
|
||||
- [Chrome ](https://omnivore.app/install/chrome)
|
||||
- [Edge](https://omnivore.app/install/edge)
|
||||
- [Firefox](https://omnivore.app/install/firefox)
|
||||
- [Safari](https://omnivore.app/install/safari)
|
||||
- [Chrome ](https://omnivore.work/install/chrome)
|
||||
- [Edge](https://omnivore.work/install/edge)
|
||||
- [Firefox](https://omnivore.work/install/firefox)
|
||||
- [Safari](https://omnivore.work/install/safari)
|
||||
|
||||
2. Navega hasta la página que quieres guardar y toca el botón **Omnivore** en la barra de herramientas de tu navegador o en el menú Extensiones.
|
||||
3. Como alternativa, puedes hacer clic con el botón derecho (command+clic en Mac) en cualquier enlace y seleccionar **Guardar en Omnivore** en el menú.
|
||||
|
|
@ -44,7 +44,7 @@ Hay cinco formas principales de guardar los enlaces a páginas o artículos que
|
|||
|
||||
La mejor forma de guardar enlaces desde tu dispositivo móvil es a través de la aplicación Omnivore. Puedes descargar la aplicación aquí:
|
||||
|
||||
- [iOS (iPhone or iPad)](https://omnivore.app/install/ios)
|
||||
- [iOS (iPhone or iPad)](https://omnivore.work/install/ios)
|
||||
- Android
|
||||
|
||||
Una vez instalada la aplicación móvil:
|
||||
|
|
@ -56,7 +56,7 @@ Una vez instalada la aplicación móvil:
|
|||
### Suscripciones a boletines (newsletters) por correo electrónico
|
||||
|
||||
1. En el sitio web o la aplicación Omnivore, clic en tu foto, iniciales o avatar en la esquina superior derecha para acceder al menú de perfil. Selecciona **Correos electrónicos** en el menú.
|
||||
2. Clic en **Crear una nueva dirección de correo electrónico** para agregar una nueva dirección de correo electrónico (por ejemplo, nombre de usuario-123_abc@inbox.omnivore.app) a la lista.
|
||||
2. Clic en **Crear una nueva dirección de correo electrónico** para agregar una nueva dirección de correo electrónico (por ejemplo, nombre de usuario-123_abc@inbox.omnivore.work) a la lista.
|
||||
3. Haz clic en el icono **Copiar** junto a la dirección de correo electrónico.
|
||||
4. Navega hasta la página de registro del boletín (newsletter) al que quieres suscribirte.
|
||||
5. Pega la dirección de correo electrónico de Omnivore en el formulario de registro.
|
||||
|
|
@ -64,7 +64,7 @@ Una vez instalada la aplicación móvil:
|
|||
|
||||
### Guardar PDFs desde un Mac
|
||||
|
||||
1. Instala la [aplicación Mac] (https://omnivore.app/install/mac).
|
||||
1. Instala la [aplicación Mac] (https://omnivore.work/install/mac).
|
||||
2. En tu Mac, busca el PDF que deseas guardar y haz clic con el botón derecho o ctrl+clic en el nombre del archivo.
|
||||
3. Selecciona **Compartir** en el menú y elige **Omnívore**.
|
||||
4. El enlace aparecerá en tu Biblioteca la próxima vez que la actualices.
|
||||
|
|
@ -135,7 +135,7 @@ De forma predeterminada, la bandeja de entrada de la biblioteca muestra todos lo
|
|||
### Buscar
|
||||
|
||||
1. Para buscar en todos sus enlaces guardados, escribe una palabra clave o frase en la barra de búsqueda.
|
||||
2. Puedes combinar palabras clave con etiquetas y filtros para refinar aún más tu búsqueda. [Saber más sobre búsqueda avanzada](https://docs.omnivore.app/using/search.html).
|
||||
2. Puedes combinar palabras clave con etiquetas y filtros para refinar aún más tu búsqueda. [Saber más sobre búsqueda avanzada](https://docs.omnivore.work/using/search.html).
|
||||
|
||||
### Filtros
|
||||
|
||||
|
|
|
|||
|
|
@ -31,10 +31,10 @@ Il existe cinq façons de sauvegarder des liens vers des pages ou des articles q
|
|||
|
||||
1. Téléchargez et installez l'extension Omnivore pour votre navigateur :
|
||||
|
||||
- [Chrome ](https://omnivore.app/install/chrome)
|
||||
- [Edge](https://omnivore.app/install/edge)
|
||||
- [Firefox](https://omnivore.app/install/firefox)
|
||||
- [Safari](https://omnivore.app/install/safari)
|
||||
- [Chrome ](https://omnivore.work/install/chrome)
|
||||
- [Edge](https://omnivore.work/install/edge)
|
||||
- [Firefox](https://omnivore.work/install/firefox)
|
||||
- [Safari](https://omnivore.work/install/safari)
|
||||
|
||||
2. Accédez à la page que vous souhaitez enregistrer et appuyez sur le bouton Omnivore dans la barre d'outils de votre navigateur ou dans le menu Extensions.
|
||||
3. Alternativement, vous pouvez cliquer avec le bouton droit (commande + clic sur Mac) sur n'importe quel lien hypertexte et sélectionner **Enregistrer dans Omnivore** dans le menu.
|
||||
|
|
@ -44,7 +44,7 @@ Il existe cinq façons de sauvegarder des liens vers des pages ou des articles q
|
|||
|
||||
La meilleure façon d'enregistrer des liens à partir de votre appareil mobile est via l'application Omnivore. Vous pouvez télécharger l'application ici :
|
||||
|
||||
- [iOS (iPhone ou iPad)](https://omnivore.app/install/ios)
|
||||
- [iOS (iPhone ou iPad)](https://omnivore.work/install/ios)
|
||||
- Android
|
||||
|
||||
Une fois que l'application mobile est installée :
|
||||
|
|
@ -56,7 +56,7 @@ Une fois que l'application mobile est installée :
|
|||
### Abonnements à la newsletter via e-mail
|
||||
|
||||
1. Sur le site web ou l'application Omnivore, appuyez sur votre photo, initiale ou avatar dans le coin supérieur droit pour accéder au menu de profil. Sélectionnez **Emails** dans le menu.
|
||||
2. Appuyez sur **Create a New Email Address** pour ajouter une nouvelle adresse e-mail (par exemple : username-123_abc@inbox.omnivore.app) à la liste.
|
||||
2. Appuyez sur **Create a New Email Address** pour ajouter une nouvelle adresse e-mail (par exemple : username-123_abc@inbox.omnivore.work) à la liste.
|
||||
3. Cliquez sur l'icône Copier à côté de l'adresse e-mail.
|
||||
4. Accédez à la page d'inscription pour la newsletter à laquelle vous souhaitez vous abonner.
|
||||
5. Collez l'adresse e-mail Omnivore dans le formulaire d'inscription.
|
||||
|
|
@ -64,7 +64,7 @@ Une fois que l'application mobile est installée :
|
|||
|
||||
### Enregistrement de PDF à partir d'un Mac
|
||||
|
||||
1. Installez [l'application Mac](https://omnivore.app/install/mac).
|
||||
1. Installez [l'application Mac](https://omnivore.work/install/mac).
|
||||
2. Sur votre Mac, localisez le PDF que vous souhaitez enregistrer et faites un clic droit ou ctrl + clic sur le nom de fichier.
|
||||
3. Sélectionnez **Share** dans le menu et choisissez **Omnivore**.
|
||||
4. Le lien apparaîtra dans votre bibliothèque la prochaine fois que vous la rafraîchirez.
|
||||
|
|
@ -135,7 +135,7 @@ Par défaut, la boîte de réception de la bibliothèque affiche tous les liens
|
|||
### Recherche
|
||||
|
||||
1. Pour rechercher parmi tous les liens que vous avez enregistrés, entrez un mot-clé ou une phrase dans la barre de recherche.
|
||||
2. Vous pouvez combiner les mots-clés avec les étiquettes et les filtres pour cibler encore plus votre recherche. [En savoir plus sur la recherche avancée.](https://docs.omnivore.app/using/search.html).
|
||||
2. Vous pouvez combiner les mots-clés avec les étiquettes et les filtres pour cibler encore plus votre recherche. [En savoir plus sur la recherche avancée.](https://docs.omnivore.work/using/search.html).
|
||||
|
||||
### Filtres
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,10 @@
|
|||
|
||||
1. अपने ब्राउज़र के लिए ओम्निवोर एक्सटेंशन डाउनलोड और इंस्टॉल करें:
|
||||
|
||||
- [ क्रोम ](https://omnivore.app/install/chrome)
|
||||
- [ एज ](https://omnivore.app/install/edge)
|
||||
- [ फ़ायरफ़ॉक्स ](https://omnivore.app/install/firefox)
|
||||
- [ सफारी ](https://omnivore.app/install/safari)
|
||||
- [ क्रोम ](https://omnivore.work/install/chrome)
|
||||
- [ एज ](https://omnivore.work/install/edge)
|
||||
- [ फ़ायरफ़ॉक्स ](https://omnivore.work/install/firefox)
|
||||
- [ सफारी ](https://omnivore.work/install/safari)
|
||||
|
||||
2. उस पृष्ठ पर जाएँ जिसे आप सहेजना चाहते हैं और अपने ब्राउज़र के टूलबार या एक्सटेंशन मेनू में ओम्निवोर बटन पर टैप करें।
|
||||
3. वैकल्पिक रूप से, आप किसी भी हाइपरलिंक पर राइट-क्लिक (मैक पर कमांड+क्लिक) कर सकते हैं और मेनू से सेव टू ओम्निवोर का चयन कर सकते हैं।
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
|
||||
अपने मोबाइल डिवाइस से लिंक सहेजने का सबसे अच्छा तरीका ओम्निवोर ऐप है। आप यहां ऐप डाउनलोड कर सकते हैं:
|
||||
|
||||
- [ आईओएस (आईफोन या आईपैड) ](https://omnivore.app/install/ios)
|
||||
- [ आईओएस (आईफोन या आईपैड) ](https://omnivore.work/install/ios)
|
||||
- एंड्रॉयड
|
||||
|
||||
एक बार मोबाइल ऐप इंस्टॉल हो जाए:
|
||||
|
|
@ -55,7 +55,7 @@
|
|||
### ईमेल के माध्यम से न्यूज़लेटर सदस्यताएँ
|
||||
|
||||
1. ओम्निवोर वेबसाइट या ऐप पर, प्रोफ़ाइल मेनू तक पहुंचने के लिए ऊपरी दाएं कोने में अपनी फोटो, नाम के पहले अक्षर या अवतार पर टैप करें। मेनू से ईमेल चुनें.
|
||||
2. सूची में नया ईमेल पता (उदा: username-123_abc@inbox.omnivore.app) जोड़ने के लिए नया ईमेल पता बनाएं पर टैप करें।
|
||||
2. सूची में नया ईमेल पता (उदा: username-123_abc@inbox.omnivore.work) जोड़ने के लिए नया ईमेल पता बनाएं पर टैप करें।
|
||||
3. ईमेल पते के आगे कॉपी आइकन पर क्लिक करें।
|
||||
4. जिस न्यूज़लेटर की आप सदस्यता लेना चाहते हैं उसके लिए साइनअप पृष्ठ पर जाएँ।
|
||||
5. ओम्निवोर ईमेल पते को साइनअप फॉर्म में चिपकाएँ।
|
||||
|
|
@ -63,7 +63,7 @@
|
|||
|
||||
### मैक से पीडीएफ़ सहेजना
|
||||
|
||||
1. मैक ऐप इंस्टॉल करें। [मैक ऐप](https://omnivore.app/install/mac)
|
||||
1. मैक ऐप इंस्टॉल करें। [मैक ऐप](https://omnivore.work/install/mac)
|
||||
2. अपने मैक पर, वह पीडीएफ ढूंढें जिसे आप सहेजना चाहते हैं और फ़ाइल नाम पर राइट-क्लिक करें या Ctrl+click करें।
|
||||
3. मेनू से शेयर चुनें और ओम्निवोर चुनें।
|
||||
4. गली बार जब आप इसे रीफ्रेश करेंगे तो लिंक आपकी लाइब्रेरी में दिखाई देगा।
|
||||
|
|
@ -155,4 +155,4 @@
|
|||
|
||||
### वेबहुक
|
||||
|
||||
जब आप कोई लिंक सहेजते हैं या जिस पृष्ठ को आप पढ़ रहे हैं उसमें हाइलाइट्स जोड़ते हैं तो ओम्निवोर वेबहुक को ट्रिगर कर सकता है। <span style="text-decoration:underline;">यह उदाहरण </span> Google ड्राइव पर संग्रहीत Google शीट स्प्रेडशीट में सभी सहेजे गए लिंक लिखने के लिए वेबहुक का उपयोग किया जा रहा है।
|
||||
जब आप कोई लिंक सहेजते हैं या जिस पृष्ठ को आप पढ़ रहे हैं उसमें हाइलाइट्स जोड़ते हैं तो ओम्निवोर वेबहुक को ट्रिगर कर सकता है। <span style="text-decoration:underline;">यह उदाहरण </span> Google ड्राइव पर संग्रहीत Google शीट स्प्रेडशीट में सभी सहेजे गए लिंक लिखने के लिए वेबहुक का उपयोग किया जा रहा है।
|
||||
|
|
|
|||
|
|
@ -31,10 +31,10 @@ Omnivoreは、オンラインで読んだものを保存し整理できる **後
|
|||
|
||||
1. ブラウザ用のOmnivore拡張機能をダウンロードしてインストールします:
|
||||
|
||||
- [Chrome](https://omnivore.app/install/chrome)
|
||||
- [Edge](https://omnivore.app/install/edge)
|
||||
- [Firefox](https://omnivore.app/install/firefox)
|
||||
- [Safari](https://omnivore.app/install/safari)
|
||||
- [Chrome](https://omnivore.work/install/chrome)
|
||||
- [Edge](https://omnivore.work/install/edge)
|
||||
- [Firefox](https://omnivore.work/install/firefox)
|
||||
- [Safari](https://omnivore.work/install/safari)
|
||||
|
||||
2. 保存したいページに移動し、ブラウザのツールバーまたは拡張機能メニューにあるOmnivoreボタンをタップします。
|
||||
3. または、リンクを右クリック(Macの場合はコマンド+クリック)し、メニューから**Omnivoreに保存**を選択できます。
|
||||
|
|
@ -44,7 +44,7 @@ Omnivoreは、オンラインで読んだものを保存し整理できる **後
|
|||
|
||||
モバイルデバイスからリンクを保存する最良の方法は、Omnivoreアプリを使用することです。アプリはこちらからダウンロードできます:
|
||||
|
||||
- [iOS(iPhoneまたはiPad)](https://omnivore.app/install/ios)
|
||||
- [iOS(iPhoneまたはiPad)](https://omnivore.work/install/ios)
|
||||
- Android
|
||||
|
||||
モバイルアプリをインストールしたら:
|
||||
|
|
@ -56,7 +56,7 @@ Omnivoreは、オンラインで読んだものを保存し整理できる **後
|
|||
### メール経由のニュースレター購読
|
||||
|
||||
1. Omnivoreのウェブサイトまたアプリで、右上隅にある写真、イニシャル、またはアバターをタップしてプロファイルメニューにアクセスします。メニューから**Eメール**を選択します。
|
||||
2. **新しいメールアドレスを作成**をタップして、リストに新しいメールアドレス(例: username-123_abc@inbox.omnivore.app)を追加します。
|
||||
2. **新しいメールアドレスを作成**をタップして、リストに新しいメールアドレス(例: username-123_abc@inbox.omnivore.work)を追加します。
|
||||
3. メールアドレスの横にあるコピーのアイコンをクリックします。
|
||||
4. 購読したいニュースレターの登録ページに移動します。
|
||||
5. Omnivoreのメールアドレスを登録フォームに貼り付けます。
|
||||
|
|
@ -64,7 +64,7 @@ Omnivoreは、オンラインで読んだものを保存し整理できる **後
|
|||
|
||||
### MacからPDFを保存
|
||||
|
||||
1. [Macアプリ](https://omnivore.app/install/mac)をインストールします。
|
||||
1. [Macアプリ](https://omnivore.work/install/mac)をインストールします。
|
||||
2. Mac上で保存したいPDFを見つけ、ファイル名を右クリックまたはCtrl+クリックします。
|
||||
3. メニューから**共有**を選択し、**Omnivore**を選びます。
|
||||
4. リンクは、次にライブラリをリフレッシュすると表示されます。
|
||||
|
|
@ -134,7 +134,7 @@ Omnivoreは異なるデバイス間での読書の進行状況を自動的に追
|
|||
### 検索
|
||||
|
||||
1. 保存したすべてのリンクを検索するには、検索バーにキーワードやフレーズを入力します。
|
||||
2. キーワードをラベルやフィルタと組み合わせて、さらに絞り込んだ検索を行うことができます。[詳細な検索について詳しく](https://docs.omnivore.app/using/search.html)。
|
||||
2. キーワードをラベルやフィルタと組み合わせて、さらに絞り込んだ検索を行うことができます。[詳細な検索について詳しく](https://docs.omnivore.work/using/search.html)。
|
||||
|
||||
### フィルタ
|
||||
|
||||
|
|
|
|||
|
|
@ -31,10 +31,10 @@ Daha sonra okumak istediğiniz sayfaların veya makalelerin bağlantılarını k
|
|||
|
||||
1. Tarayıcınız için Omnivore uzantısını indirin ve yükleyin:
|
||||
|
||||
- [Chrome](https://omnivore.app/install/chrome)
|
||||
- [Edge](https://omnivore.app/install/edge)
|
||||
- [Firefox](https://omnivore.app/install/firefox)
|
||||
- [Safari](https://omnivore.app/install/safari)
|
||||
- [Chrome](https://omnivore.work/install/chrome)
|
||||
- [Edge](https://omnivore.work/install/edge)
|
||||
- [Firefox](https://omnivore.work/install/firefox)
|
||||
- [Safari](https://omnivore.work/install/safari)
|
||||
|
||||
2. Kaydetmek istediğiniz sayfaya gidin ve tarayıcınızın araç çubuğundaki veya Uzantılar menüsündeki Omnivore düğmesine dokunun.
|
||||
3. Alternatif olarak, herhangi bir linke sağ tıklayabilir (Mac'te command+tıklama) ve menüden **Save to Omnivore** seçeneğine tıklayabilirsiniz.
|
||||
|
|
@ -44,7 +44,7 @@ Daha sonra okumak istediğiniz sayfaların veya makalelerin bağlantılarını k
|
|||
|
||||
Mobil cihazınızdan bağlantıları kaydetmenin en iyi yolu Omnivore uygulamasıdır. Uygulamayı buradan indirebilirsiniz:
|
||||
|
||||
- [iOS (iPhone veya iPad)](https://omnivore.app/install/ios)
|
||||
- [iOS (iPhone veya iPad)](https://omnivore.work/install/ios)
|
||||
- Android
|
||||
|
||||
Mobil uygulama yüklendikten sonra:
|
||||
|
|
@ -56,7 +56,7 @@ Mobil uygulama yüklendikten sonra:
|
|||
### E-posta ile Bülten Abonelikleri
|
||||
|
||||
1. Omnivore web sitesinde veya uygulamasında, profil menüsüne erişmek için sağ üst köşedeki fotoğrafınıza, baş harfinize veya avatarınıza dokunun. Menüden **E-postalar** öğesini seçin.
|
||||
2. Listeye yeni bir e-posta adresi (örn. username-123_abc@inbox.omnivore.app) eklemek için **Yeni E-posta Adresi Oluştur** öğesine dokunun.
|
||||
2. Listeye yeni bir e-posta adresi (örn. username-123_abc@inbox.omnivore.work) eklemek için **Yeni E-posta Adresi Oluştur** öğesine dokunun.
|
||||
3. E-posta adresinin yanındaki kopyala simgesine tıklayın.
|
||||
4. Abone olmak istediğiniz haber bülteninin kayıt sayfasına gidin.
|
||||
5. Omnivore e-posta adresini kayıt formuna yapıştırın.
|
||||
|
|
@ -64,7 +64,7 @@ Mobil uygulama yüklendikten sonra:
|
|||
|
||||
### Mac bir cihazdan PDF kaydetme
|
||||
|
||||
1. [Mac uygulaması](https://omnivore.app/install/mac)nı kurun.
|
||||
1. [Mac uygulaması](https://omnivore.work/install/mac)nı kurun.
|
||||
2. Mac'inizde kaydetmek istediğiniz dosyanın ismine sağ tıklayın veya ctrl+tıklayın.
|
||||
3. Menüden **Paylaş**'a tıklayın ve **Omnivore**'u seçin.
|
||||
4. Bağlantı, bir sonraki yenilemenizde kitaplığınızda görünecektir.
|
||||
|
|
@ -135,7 +135,7 @@ Varsayılan olarak, kitaplık gelen kutusu kaydettiğiniz tüm bağlantıları g
|
|||
### Arama
|
||||
|
||||
1. Kaydettiğiniz tüm bağlantıları aramak için arama çubuğuna bir anahtar kelime veya ifade girin.
|
||||
2. Aramanızı daha da daraltmak için etiketleri ve filtreleri anahtar kelimelerle birleştirebilirsiniz. [Daha fazla bilgi için gelişmiş arama hakkında bunu inceleyebilirsiniz](https://docs.omnivore.app/using/search.html).
|
||||
2. Aramanızı daha da daraltmak için etiketleri ve filtreleri anahtar kelimelerle birleştirebilirsiniz. [Daha fazla bilgi için gelişmiş arama hakkında bunu inceleyebilirsiniz](https://docs.omnivore.work/using/search.html).
|
||||
|
||||
### Filtreler
|
||||
|
||||
|
|
|
|||
|
|
@ -264,7 +264,7 @@ export const saveAttachmentJob = async (data: EmailJobData) => {
|
|||
uploadFileData.fileName
|
||||
)
|
||||
|
||||
const uploadFileUrlOverride = `https://omnivore.app/attachments/${uploadFilePathName}`
|
||||
const uploadFileUrlOverride = `https://omnivore.work/attachments/${uploadFilePathName}`
|
||||
const uploadFileHash = uploadFileDetails.md5Hash
|
||||
const itemType =
|
||||
uploadFileData.contentType === 'application/pdf'
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ import {
|
|||
import { DEFAULT_HOME_PATH } from '../../utils/navigation'
|
||||
|
||||
const appleBaseURL = 'https://appleid.apple.com'
|
||||
const audienceName = 'app.omnivore.app'
|
||||
const audienceName = 'app.omnivore.work'
|
||||
const webAudienceName = 'app.omnivore'
|
||||
|
||||
async function fetchApplePublicKey(kid: string): Promise<string | null> {
|
||||
|
|
|
|||
|
|
@ -393,8 +393,8 @@ export function authRouter() {
|
|||
}
|
||||
|
||||
// If we do have an auth token, we want to try redirecting to the
|
||||
// sso endpoint which will set a cookie for the client domain (omnivore.app)
|
||||
// after we set a cookie for the API domain (api-prod.omnivore.app)
|
||||
// sso endpoint which will set a cookie for the client domain (omnivore.work)
|
||||
// after we set a cookie for the API domain (api-prod.omnivore.work)
|
||||
const authToken = await createWebAuthToken(user.id)
|
||||
if (authToken) {
|
||||
const ssoToken = createSsoToken(authToken, redirectUri)
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ export function emailAttachmentRouter() {
|
|||
uploadFile.fileName
|
||||
)
|
||||
|
||||
const uploadFileUrlOverride = `https://omnivore.app/attachments/${uploadFilePathName}`
|
||||
const uploadFileUrlOverride = `https://omnivore.work/attachments/${uploadFilePathName}`
|
||||
const uploadFileHash = uploadFileDetails.md5Hash
|
||||
const itemType =
|
||||
uploadFile.contentType === 'application/pdf'
|
||||
|
|
|
|||
|
|
@ -103,18 +103,18 @@ export const findNewsletterEmailByAddress = async (
|
|||
}
|
||||
|
||||
const createRandomEmailAddress = (userName: string, length: number): string => {
|
||||
// format: hongbo-sduhfsjh1e@inbox.omnivore.app
|
||||
// format: hongbo-sduhfsjh1e@inbox.omnivore.work
|
||||
const inbox =
|
||||
'inbox' + (env.server.apiEnv === 'prod' ? '' : `-${env.server.apiEnv}`)
|
||||
/* nanoid can generate a random string ending with -
|
||||
which is not allowed as a last character in email address.
|
||||
So we append a 'e' to all random strings.
|
||||
|
||||
when rand is sdfsdf-: jacksonh-sdfsdf-e@inbox.omnivore.app
|
||||
when rand is abcdef: jacksonh-abcdefe@inbox.omnivore.app
|
||||
when rand is sdfsdf-: jacksonh-sdfsdf-e@inbox.omnivore.work
|
||||
when rand is abcdef: jacksonh-abcdefe@inbox.omnivore.work
|
||||
*/
|
||||
return `${userName}-${nanoid(length)}e@${
|
||||
env.email.domain || `@${inbox}.omnivore.app`
|
||||
env.email.domain || `@${inbox}.omnivore.work`
|
||||
}`
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ export const sendWithMailJet = async (
|
|||
Messages: [
|
||||
{
|
||||
From: {
|
||||
Email: 'no-reply@omnivore.app',
|
||||
Email: 'no-reply@omnivore.work',
|
||||
},
|
||||
To: [
|
||||
{
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ export const uploadFile = async (
|
|||
const uploadFilePathName = generateUploadFilePathName(uploadFileId, fileName)
|
||||
// If this is a file URL, we swap in a special URL
|
||||
if (isFileUrl(url)) {
|
||||
url = `https://omnivore.app/attachments/${uploadFilePathName}`
|
||||
url = `https://omnivore.work/attachments/${uploadFilePathName}`
|
||||
}
|
||||
|
||||
const uploadFileData = await authTrx((t) =>
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ export const softDeleteUser = async (userId: string) => {
|
|||
|
||||
return t.getRepository(User).update(userId, {
|
||||
status: StatusType.Deleted,
|
||||
email: `deleted_user_${userId}@omnivore.app`,
|
||||
email: `deleted_user_${userId}@omnivore.work`,
|
||||
sourceUserId: `deleted_user_${userId}`,
|
||||
})
|
||||
},
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@ import normalizeUrl from 'normalize-url'
|
|||
const BLOCKED_SITES = [
|
||||
'https://mail.google.com/',
|
||||
'https://accounts.google.com/',
|
||||
'https://dev.omnivore.app',
|
||||
'https://demo.omnivore.app',
|
||||
'https://omnivore.app',
|
||||
'https://dev.omnivore.work',
|
||||
'https://demo.omnivore.work',
|
||||
'https://omnivore.work',
|
||||
]
|
||||
|
||||
export const isSiteBlockedForParse = (urlToParse: string): boolean => {
|
||||
|
|
|
|||
|
|
@ -3,12 +3,12 @@ import { env } from '../env'
|
|||
export const corsConfig = {
|
||||
credentials: true,
|
||||
origin: [
|
||||
'https://omnivore.app',
|
||||
'https://dev.omnivore.app',
|
||||
'https://demo.omnivore.app',
|
||||
'https://web-prod.omnivore.app',
|
||||
'https://web-dev.omnivore.app',
|
||||
'https://web-demo.omnivore.app',
|
||||
'https://omnivore.work',
|
||||
'https://dev.omnivore.work',
|
||||
'https://demo.omnivore.work',
|
||||
'https://web-prod.omnivore.work',
|
||||
'https://web-dev.omnivore.work',
|
||||
'https://web-demo.omnivore.work',
|
||||
'http://localhost:3000',
|
||||
env.dev.isLocal && 'https://studio.apollographql.com',
|
||||
env.client.url,
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ const DOM_PURIFY_CONFIG = {
|
|||
}
|
||||
const ARTICLE_PREFIX = 'omnivore:'
|
||||
|
||||
export const FAKE_URL_PREFIX = 'https://omnivore.app/no_url?q='
|
||||
export const FAKE_URL_PREFIX = 'https://omnivore.work/no_url?q='
|
||||
export const rssParserConfig = () => {
|
||||
const fingerprint = generateFingerprint()
|
||||
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ export const createTestUser = async (
|
|||
const [newUser] = await createUser({
|
||||
provider: 'GOOGLE',
|
||||
sourceUserId: 'fake-user-id-' + name,
|
||||
email: `${name}@omnivore.app`,
|
||||
email: `${name}@omnivore.work`,
|
||||
username: name,
|
||||
bio: `i am ${name}`,
|
||||
name: name,
|
||||
|
|
@ -82,7 +82,7 @@ export const createUserWithoutProfile = async (name: string): Promise<User> => {
|
|||
return userRepository.save({
|
||||
source: 'GOOGLE',
|
||||
sourceUserId: 'fake-user-id-' + name,
|
||||
email: `${name}@omnivore.app`,
|
||||
email: `${name}@omnivore.work`,
|
||||
name: name,
|
||||
})
|
||||
}
|
||||
|
|
@ -115,7 +115,7 @@ export const createTestLibraryItem = async (
|
|||
const item = {
|
||||
user: { id: userId },
|
||||
title: 'test title',
|
||||
originalUrl: `https://blog.omnivore.app/test-url-${generateFakeUuid()}`,
|
||||
originalUrl: `https://blog.omnivore.work/test-url-${generateFakeUuid()}`,
|
||||
slug: 'test-with-omnivore',
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ class MockFile {
|
|||
}
|
||||
|
||||
getSignedUrl() {
|
||||
return ['https://signed-url.upload.omnivore.app']
|
||||
return ['https://signed-url.upload.omnivore.work']
|
||||
}
|
||||
|
||||
getMetadata() {
|
||||
|
|
@ -48,7 +48,7 @@ class MockFile {
|
|||
}
|
||||
|
||||
publicUrl() {
|
||||
return 'https://public-url.upload.omnivore.app'
|
||||
return 'https://public-url.upload.omnivore.work'
|
||||
}
|
||||
|
||||
makePublic() {
|
||||
|
|
|
|||
|
|
@ -369,7 +369,7 @@ describe('Article API', () => {
|
|||
|
||||
context('when saving from document', () => {
|
||||
before(() => {
|
||||
url = 'https://blog.omnivore.app/p/testing-is-fun-with-omnivore'
|
||||
url = 'https://blog.omnivore.work/p/testing-is-fun-with-omnivore'
|
||||
source = 'puppeteer-parse'
|
||||
document = '<p>test</p>'
|
||||
title = 'new title'
|
||||
|
|
@ -389,7 +389,7 @@ describe('Article API', () => {
|
|||
|
||||
context('when saving an archived article', () => {
|
||||
before(async () => {
|
||||
url = 'https://blog.omnivore.app/saving-archived-article.com'
|
||||
url = 'https://blog.omnivore.work/saving-archived-article.com'
|
||||
source = 'puppeteer-parse'
|
||||
document = '<p>test</p>'
|
||||
title = 'new title'
|
||||
|
|
@ -436,7 +436,7 @@ describe('Article API', () => {
|
|||
slug: realSlug,
|
||||
readingProgressTopPercent: 100,
|
||||
user,
|
||||
originalUrl: 'https://blog.omnivore.app/test-with-omnivore',
|
||||
originalUrl: 'https://blog.omnivore.work/test-with-omnivore',
|
||||
directionality: DirectionalityType.RTL,
|
||||
}
|
||||
const item = await createOrUpdateLibraryItem(
|
||||
|
|
@ -538,7 +538,7 @@ describe('Article API', () => {
|
|||
|
||||
describe('SavePage', () => {
|
||||
const title = 'Example Title'
|
||||
let url = 'https://blog.omnivore.app'
|
||||
let url = 'https://blog.omnivore.work'
|
||||
const originalContent =
|
||||
'<html dir="rtl"><body><div>Example Content</div></body></html>'
|
||||
const source = 'puppeteer-parse'
|
||||
|
|
@ -566,7 +566,7 @@ describe('Article API', () => {
|
|||
|
||||
context('when we save a item that is already archived', () => {
|
||||
before(() => {
|
||||
url = 'https://blog.omnivore.app/new-url'
|
||||
url = 'https://blog.omnivore.work/new-url'
|
||||
})
|
||||
|
||||
after(async () => {
|
||||
|
|
@ -617,7 +617,7 @@ describe('Article API', () => {
|
|||
|
||||
context('when we also want to save labels and archives the item', () => {
|
||||
before(() => {
|
||||
url = 'https://blog.omnivore.app/new-url-2'
|
||||
url = 'https://blog.omnivore.work/new-url-2'
|
||||
})
|
||||
|
||||
after(async () => {
|
||||
|
|
@ -677,7 +677,7 @@ describe('Article API', () => {
|
|||
|
||||
describe('SaveUrl', () => {
|
||||
let query = ''
|
||||
const url = 'https://blog.omnivore.app/new-url-1'
|
||||
const url = 'https://blog.omnivore.work/new-url-1'
|
||||
|
||||
before(() => {
|
||||
sinon.replace(
|
||||
|
|
@ -717,7 +717,7 @@ describe('Article API', () => {
|
|||
user,
|
||||
title: 'test title',
|
||||
readableContent: '<p>test</p>',
|
||||
originalUrl: 'https://blog.omnivore.app/setBookmarkArticle',
|
||||
originalUrl: 'https://blog.omnivore.work/setBookmarkArticle',
|
||||
slug: 'test-with-omnivore',
|
||||
}
|
||||
const item = await createOrUpdateLibraryItem(
|
||||
|
|
@ -832,7 +832,7 @@ describe('Article API', () => {
|
|||
await createOrUpdateLibraryItem(
|
||||
{
|
||||
user: { id: user.id },
|
||||
originalUrl: 'https://blog.omnivore.app/setBookmarkArticle',
|
||||
originalUrl: 'https://blog.omnivore.work/setBookmarkArticle',
|
||||
slug: 'test-with-omnivore',
|
||||
readableContent: '<p>test</p>',
|
||||
title: 'test title',
|
||||
|
|
@ -875,7 +875,7 @@ describe('Article API', () => {
|
|||
const item = await createOrUpdateLibraryItem(
|
||||
{
|
||||
user: { id: user.id },
|
||||
originalUrl: 'https://blog.omnivore.app/setBookmarkArticle',
|
||||
originalUrl: 'https://blog.omnivore.work/setBookmarkArticle',
|
||||
slug: 'test-with-omnivore',
|
||||
readableContent: '<p>test</p>',
|
||||
title: 'test title',
|
||||
|
|
@ -917,7 +917,7 @@ describe('Article API', () => {
|
|||
|
||||
context('when the file is uploaded', () => {
|
||||
before(async () => {
|
||||
url = 'https://blog.omnivore.app/'
|
||||
url = 'https://blog.omnivore.work/'
|
||||
const uploadFile = await getRepository(UploadFile).save({
|
||||
fileName: 'test.pdf',
|
||||
contentType: 'application/pdf',
|
||||
|
|
@ -938,7 +938,7 @@ describe('Article API', () => {
|
|||
})
|
||||
|
||||
describe('Search API', () => {
|
||||
const url = 'https://blog.omnivore.app/p/getting-started-with-omnivore'
|
||||
const url = 'https://blog.omnivore.work/p/getting-started-with-omnivore'
|
||||
const items: LibraryItem[] = []
|
||||
const highlights: Highlight[] = []
|
||||
const searchedKeyword = 'aaabbbccc'
|
||||
|
|
@ -2021,7 +2021,7 @@ describe('Article API', () => {
|
|||
title: 'typeahead search item',
|
||||
readableContent: '<p>test</p>',
|
||||
slug: '',
|
||||
originalUrl: `https://blog.omnivore.app/p/typeahead-search-${i}`,
|
||||
originalUrl: `https://blog.omnivore.work/p/typeahead-search-${i}`,
|
||||
}
|
||||
const item = await createOrUpdateLibraryItem(
|
||||
itemToSave,
|
||||
|
|
@ -2099,7 +2099,7 @@ describe('Article API', () => {
|
|||
title: 'test item',
|
||||
slug: '',
|
||||
readableContent: '<p>test</p>',
|
||||
originalUrl: `https://blog.omnivore.app/p/updates-since-${i}`,
|
||||
originalUrl: `https://blog.omnivore.work/p/updates-since-${i}`,
|
||||
user,
|
||||
}
|
||||
const item = await createOrUpdateLibraryItem(
|
||||
|
|
@ -2229,7 +2229,7 @@ describe('Article API', () => {
|
|||
slug: '',
|
||||
state:
|
||||
i == 0 ? LibraryItemState.Failed : LibraryItemState.Succeeded,
|
||||
originalUrl: `https://blog.omnivore.app/p/bulk-action-${i}`,
|
||||
originalUrl: `https://blog.omnivore.work/p/bulk-action-${i}`,
|
||||
},
|
||||
user.id,
|
||||
undefined,
|
||||
|
|
@ -2271,7 +2271,7 @@ describe('Article API', () => {
|
|||
title: 'test item',
|
||||
readableContent: '<p>test</p>',
|
||||
slug: 'test-item',
|
||||
originalUrl: `https://blog.omnivore.app/p/bulk-action-archive`,
|
||||
originalUrl: `https://blog.omnivore.work/p/bulk-action-archive`,
|
||||
publishedAt: new Date('2023-10-01'),
|
||||
},
|
||||
{
|
||||
|
|
@ -2279,7 +2279,7 @@ describe('Article API', () => {
|
|||
title: 'test item 2',
|
||||
readableContent: '<p>test</p>',
|
||||
slug: 'test-item-2',
|
||||
originalUrl: `https://blog.omnivore.app/p/bulk-action-archive-2`,
|
||||
originalUrl: `https://blog.omnivore.work/p/bulk-action-archive-2`,
|
||||
publishedAt: new Date('2023-10-02'),
|
||||
},
|
||||
],
|
||||
|
|
@ -2324,7 +2324,7 @@ describe('Article API', () => {
|
|||
slug: '',
|
||||
state:
|
||||
i == 0 ? LibraryItemState.Failed : LibraryItemState.Succeeded,
|
||||
originalUrl: `https://blog.omnivore.app/p/bulk-action-${i}`,
|
||||
originalUrl: `https://blog.omnivore.work/p/bulk-action-${i}`,
|
||||
},
|
||||
user.id,
|
||||
undefined,
|
||||
|
|
@ -2368,7 +2368,7 @@ describe('Article API', () => {
|
|||
user,
|
||||
title: 'test item',
|
||||
slug: '',
|
||||
originalUrl: `https://blog.omnivore.app/p/bulk-action-${i}`,
|
||||
originalUrl: `https://blog.omnivore.work/p/bulk-action-${i}`,
|
||||
},
|
||||
user.id,
|
||||
undefined,
|
||||
|
|
@ -2424,7 +2424,7 @@ describe('Article API', () => {
|
|||
title: 'test setFavoriteArticle',
|
||||
slug: '',
|
||||
readableContent: '<p>test</p>',
|
||||
originalUrl: `https://blog.omnivore.app/p/setFavoriteArticle`,
|
||||
originalUrl: `https://blog.omnivore.work/p/setFavoriteArticle`,
|
||||
}
|
||||
const item = await createOrUpdateLibraryItem(
|
||||
itemToSave,
|
||||
|
|
@ -2478,7 +2478,7 @@ describe('Article API', () => {
|
|||
title: 'test item',
|
||||
readableContent: '<p>test</p>',
|
||||
slug: '',
|
||||
originalUrl: `https://blog.omnivore.app/p/empty-trash-${i}`,
|
||||
originalUrl: `https://blog.omnivore.work/p/empty-trash-${i}`,
|
||||
deletedAt: new Date(),
|
||||
state: LibraryItemState.Deleted,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@ describe('ArticleSavingRequest API', () => {
|
|||
describe('createArticleSavingRequest', () => {
|
||||
it('returns the article saving request', async () => {
|
||||
const res = await graphqlRequest(
|
||||
createArticleSavingRequestMutation('https://blog.omnivore.app'),
|
||||
createArticleSavingRequestMutation('https://blog.omnivore.work'),
|
||||
authToken
|
||||
).expect(200)
|
||||
|
||||
|
|
@ -90,9 +90,9 @@ describe('ArticleSavingRequest API', () => {
|
|||
})
|
||||
|
||||
it('creates a library item in db', async () => {
|
||||
const url = 'https://blog.omnivore.app/1'
|
||||
const url = 'https://blog.omnivore.work/1'
|
||||
await graphqlRequest(
|
||||
createArticleSavingRequestMutation('https://blog.omnivore.app/1'),
|
||||
createArticleSavingRequestMutation('https://blog.omnivore.work/1'),
|
||||
authToken
|
||||
).expect(200)
|
||||
|
||||
|
|
@ -117,7 +117,7 @@ describe('ArticleSavingRequest API', () => {
|
|||
let id: string
|
||||
|
||||
before(async () => {
|
||||
url = 'https://blog.omnivore.app/2'
|
||||
url = 'https://blog.omnivore.work/2'
|
||||
// create article saving request
|
||||
const res = await graphqlRequest(
|
||||
createArticleSavingRequestMutation(url),
|
||||
|
|
|
|||
|
|
@ -107,7 +107,7 @@ describe('features resolvers', () => {
|
|||
name: `opt-in-user-${i}`,
|
||||
source: 'GOOGLE',
|
||||
sourceUserId: `fake-user-id-user${i}`,
|
||||
email: `opt-in-user-${i}@omnivore.app`,
|
||||
email: `opt-in-user-${i}@omnivore.work`,
|
||||
username: `user${i}`,
|
||||
bio: `i am user${i}`,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ describe('PopularReads API', () => {
|
|||
user.id
|
||||
)
|
||||
expect(item?.originalUrl).to.eq(
|
||||
'https://blog.omnivore.app/p/saving-links-from-your-iphone-or'
|
||||
'https://blog.omnivore.work/p/saving-links-from-your-iphone-or'
|
||||
)
|
||||
expect(item?.wordCount).to.eq(371)
|
||||
})
|
||||
|
|
|
|||
|
|
@ -121,7 +121,7 @@ describe('Recent Emails Resolver', () => {
|
|||
before(async () => {
|
||||
// create fake email
|
||||
recentEmail = await saveReceivedEmail(
|
||||
'Omnivore Newsletter <newsletter@omnivore.app>',
|
||||
'Omnivore Newsletter <newsletter@omnivore.work>',
|
||||
newsletterEmail.address,
|
||||
'fake subject 3',
|
||||
'fake text 3',
|
||||
|
|
|
|||
|
|
@ -300,12 +300,12 @@ describe('Subscriptions API', () => {
|
|||
|
||||
it('unsubscribes', async () => {
|
||||
const name = 'Sub_5'
|
||||
const to = 'unsubscribe@omnivore.app'
|
||||
const to = 'unsubscribe@omnivore.work'
|
||||
const subject = 'test'
|
||||
// create test newsletter subscriptions
|
||||
const newsletterEmail = await getRepository(NewsletterEmail).save({
|
||||
user,
|
||||
address: 'test_2@inbox.omnivore.app',
|
||||
address: 'test_2@inbox.omnivore.work',
|
||||
confirmationCode: 'test',
|
||||
})
|
||||
const subscription = await createSubscription(
|
||||
|
|
@ -369,7 +369,7 @@ describe('Subscriptions API', () => {
|
|||
`
|
||||
|
||||
context('when subscribing to a rss feed', () => {
|
||||
const url = 'https://www.omnivore.app/rss'
|
||||
const url = 'https://www.omnivore.work/rss'
|
||||
const subscriptionType = SubscriptionType.Rss
|
||||
|
||||
before(() => {
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ describe('Update API', () => {
|
|||
let query: string
|
||||
const title = 'New Title'
|
||||
const description = 'New Description'
|
||||
const previewImage = 'https://omnivore.app/image.png'
|
||||
const previewImage = 'https://omnivore.work/image.png'
|
||||
|
||||
beforeEach(() => {
|
||||
query = `
|
||||
|
|
|
|||
|
|
@ -281,7 +281,7 @@ describe('User API', () => {
|
|||
|
||||
const user = await userRepository.findOneBy({ id: userId })
|
||||
expect(user?.status).to.eql(StatusType.Deleted)
|
||||
expect(user?.email).to.eql(`deleted_user_${userId}@omnivore.app`)
|
||||
expect(user?.email).to.eql(`deleted_user_${userId}@omnivore.work`)
|
||||
})
|
||||
})
|
||||
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ describe('/article/save API', () => {
|
|||
})
|
||||
|
||||
describe('POST /article/save', () => {
|
||||
const url = 'https://blog.omnivore.app'
|
||||
const url = 'https://blog.omnivore.work'
|
||||
|
||||
before(() => {
|
||||
sinon.replace(
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ describe('auth router', () => {
|
|||
before(() => {
|
||||
password = validPassword
|
||||
username = 'Some_username'
|
||||
email = `${username}@omnivore.app ` // space at the end is intentional
|
||||
email = `${username}@omnivore.work ` // space at the end is intentional
|
||||
name = 'Some name'
|
||||
})
|
||||
|
||||
|
|
@ -523,7 +523,7 @@ describe('auth router', () => {
|
|||
const name = 'test_user'
|
||||
const username = 'test_user'
|
||||
const sourceUserId = 'test_source_user_id'
|
||||
const email = 'test_user@omnivore.app'
|
||||
const email = 'test_user@omnivore.work'
|
||||
const bio = 'test_bio'
|
||||
const provider: AuthProvider = 'EMAIL'
|
||||
|
||||
|
|
@ -586,7 +586,7 @@ describe('auth router', () => {
|
|||
describe('isValidSignupRequest', () => {
|
||||
it('returns true for normal looking requests', () => {
|
||||
const result = isValidSignupRequest({
|
||||
email: 'email@omnivore.app',
|
||||
email: 'email@omnivore.work',
|
||||
password: 'superDuperPassword',
|
||||
name: "The User's Name",
|
||||
username: 'foouser',
|
||||
|
|
@ -602,21 +602,21 @@ describe('isValidSignupRequest', () => {
|
|||
expect(result).to.be.false
|
||||
|
||||
result = isValidSignupRequest({
|
||||
email: 'email@omnivore.app',
|
||||
email: 'email@omnivore.work',
|
||||
name: "The User's Name",
|
||||
username: 'foouser',
|
||||
})
|
||||
expect(result).to.be.false
|
||||
|
||||
result = isValidSignupRequest({
|
||||
email: 'email@omnivore.app',
|
||||
email: 'email@omnivore.work',
|
||||
password: 'superDuperPassword',
|
||||
username: 'foouser',
|
||||
})
|
||||
expect(result).to.be.false
|
||||
|
||||
result = isValidSignupRequest({
|
||||
email: 'email@omnivore.app',
|
||||
email: 'email@omnivore.work',
|
||||
password: 'superDuperPassword',
|
||||
name: "The User's Name",
|
||||
})
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import { createTestUser } from '../db'
|
|||
import { request } from '../util'
|
||||
|
||||
xdescribe('Email attachments Router', () => {
|
||||
const newsletterEmailAddress = 'fakeEmail@omnivore.app'
|
||||
const newsletterEmailAddress = 'fakeEmail@omnivore.work'
|
||||
|
||||
let user: User
|
||||
let authToken: string
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ describe('User Service Router', () => {
|
|||
const users = await createUsers([
|
||||
{
|
||||
name: 'user_1',
|
||||
email: 'user_1@omnivore.app',
|
||||
email: 'user_1@omnivore.work',
|
||||
status: StatusType.Deleted,
|
||||
updatedAt: new Date(Date.now() - 1000 * 60 * 60 * 24 * 2), // 2 days ago
|
||||
source: 'GOOGLE',
|
||||
|
|
@ -28,7 +28,7 @@ describe('User Service Router', () => {
|
|||
},
|
||||
{
|
||||
name: 'user_2',
|
||||
email: 'user_2@omnivore.app',
|
||||
email: 'user_2@omnivore.work',
|
||||
status: StatusType.Deleted,
|
||||
updatedAt: new Date(Date.now() - 1000 * 60 * 60 * 24 * 2), // 2 days ago
|
||||
source: 'GOOGLE',
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ describe('validateUrl', () => {
|
|||
validateUrl('https://google.com')
|
||||
}).not.to.throw()
|
||||
expect(() => {
|
||||
validateUrl('https://omnivore.app/path')
|
||||
validateUrl('https://omnivore.work/path')
|
||||
}).not.to.throw()
|
||||
})
|
||||
it('doesnt allow access to private addresses', () => {
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ describe('saveEmail', () => {
|
|||
before(async () => {
|
||||
// create test user
|
||||
user = await createTestUser('fakeUser')
|
||||
scope = nock('https://blog.omnivore.app')
|
||||
scope = nock('https://blog.omnivore.work')
|
||||
.get('/fake-url')
|
||||
.reply(200)
|
||||
.persist()
|
||||
|
|
@ -40,7 +40,7 @@ describe('saveEmail', () => {
|
|||
})
|
||||
|
||||
it('doesnt fail if saved twice', async () => {
|
||||
const url = 'https://blog.omnivore.app/fake-url'
|
||||
const url = 'https://blog.omnivore.work/fake-url'
|
||||
const title = 'fake title'
|
||||
const author = 'fake author'
|
||||
|
||||
|
|
|
|||
|
|
@ -43,9 +43,9 @@ describe('saveNewsletterEmail', () => {
|
|||
})
|
||||
|
||||
it('adds the newsletter to the library', async () => {
|
||||
nock('https://blog.omnivore.app').get('/fake-url').reply(200)
|
||||
nock('https://blog.omnivore.app').head('/fake-url').reply(200)
|
||||
const url = 'https://blog.omnivore.app/fake-url'
|
||||
nock('https://blog.omnivore.work').get('/fake-url').reply(200)
|
||||
nock('https://blog.omnivore.work').head('/fake-url').reply(200)
|
||||
const url = 'https://blog.omnivore.work/fake-url'
|
||||
|
||||
await saveNewsletter(
|
||||
{
|
||||
|
|
@ -56,7 +56,7 @@ describe('saveNewsletterEmail', () => {
|
|||
title,
|
||||
author,
|
||||
receivedEmailId: receivedEmail.id,
|
||||
unsubHttpUrl: 'https://blog.omnivore.app/unsubscribe',
|
||||
unsubHttpUrl: 'https://blog.omnivore.work/unsubscribe',
|
||||
},
|
||||
newsletterEmail
|
||||
)
|
||||
|
|
@ -75,9 +75,9 @@ describe('saveNewsletterEmail', () => {
|
|||
})
|
||||
|
||||
it('adds a Newsletter label to that page', async () => {
|
||||
nock('https://blog.omnivore.app').get('/new-fake-url').reply(200)
|
||||
nock('https://blog.omnivore.app').head('/new-fake-url').reply(200)
|
||||
const url = 'https://blog.omnivore.app/new-fake-url'
|
||||
nock('https://blog.omnivore.work').get('/new-fake-url').reply(200)
|
||||
nock('https://blog.omnivore.work').head('/new-fake-url').reply(200)
|
||||
const url = 'https://blog.omnivore.work/new-fake-url'
|
||||
const newLabel = {
|
||||
name: 'Newsletter',
|
||||
color: '#07D2D1',
|
||||
|
|
@ -101,8 +101,8 @@ describe('saveNewsletterEmail', () => {
|
|||
})
|
||||
|
||||
it('does not create a subscription if no unsubscribe header', async () => {
|
||||
const url = 'https://omnivore.app/no_url?q=no-unsubscribe'
|
||||
nock('https://omnivore.app').get('/no_url?q=no-unsubscribe').reply(404)
|
||||
const url = 'https://omnivore.work/no_url?q=no-unsubscribe'
|
||||
nock('https://omnivore.work').get('/no_url?q=no-unsubscribe').reply(404)
|
||||
|
||||
await saveNewsletter(
|
||||
{
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -44,7 +44,7 @@ describe('parsePreparedContent', () => {
|
|||
.reply(401)
|
||||
|
||||
const html = load('./test/utils/data/stratechery-blog-post.html')
|
||||
const result = await parsePreparedContent('https://blog.omnivore.app/', {
|
||||
const result = await parsePreparedContent('https://blog.omnivore.work/', {
|
||||
document: html,
|
||||
pageInfo: {},
|
||||
})
|
||||
|
|
@ -67,7 +67,7 @@ describe('parsePreparedContent', () => {
|
|||
</body>
|
||||
</html>
|
||||
`
|
||||
const result = await parsePreparedContent('https://blog.omnivore.app/', {
|
||||
const result = await parsePreparedContent('https://blog.omnivore.work/', {
|
||||
document: html,
|
||||
pageInfo: {},
|
||||
})
|
||||
|
|
@ -95,7 +95,7 @@ describe('parsePreparedContent', () => {
|
|||
// </head>
|
||||
// <body>body</body>
|
||||
// </html>`
|
||||
// const result = await parsePreparedContent('https://blog.omnivore.app/', {
|
||||
// const result = await parsePreparedContent('https://blog.omnivore.work/', {
|
||||
// document: html,
|
||||
// pageInfo: {},
|
||||
// })
|
||||
|
|
@ -138,14 +138,14 @@ describe('getTitleFromEmailSubject', () => {
|
|||
describe('parseEmailAddress', () => {
|
||||
it('returns the name and address when in name <address> format', () => {
|
||||
const name = 'test name'
|
||||
const address = 'tester@omnivore.app'
|
||||
const address = 'tester@omnivore.work'
|
||||
const parsed = parseEmailAddress(`${name} <${address}>`)
|
||||
expect(parsed.name).to.eql(name)
|
||||
expect(parsed.address).to.eql(address)
|
||||
})
|
||||
|
||||
it('returns the address when in address format', () => {
|
||||
const address = 'tester@omnivore.app'
|
||||
const address = 'tester@omnivore.work'
|
||||
const parsed = parseEmailAddress(address)
|
||||
expect(parsed.name).to.eql('')
|
||||
expect(parsed.address).to.eql(address)
|
||||
|
|
|
|||
|
|
@ -48,13 +48,13 @@ describe('videoIdFromYouTubeUrl', () => {
|
|||
|
||||
it('Returns undefined for non-youtube url', () => {
|
||||
const result = videoIdFromYouTubeUrl(
|
||||
'https://omnivore.app/iZxR7rPdvuQ?si=ad73DTmmXL_lbn31'
|
||||
'https://omnivore.work/iZxR7rPdvuQ?si=ad73DTmmXL_lbn31'
|
||||
)
|
||||
expect(result).to.eq(undefined)
|
||||
})
|
||||
|
||||
it('Returns undefined for non-youtube short url', () => {
|
||||
const result = videoIdFromYouTubeUrl('https://omnivore.app/?v=iZxR7rPdvuQ')
|
||||
const result = videoIdFromYouTubeUrl('https://omnivore.work/?v=iZxR7rPdvuQ')
|
||||
expect(result).to.eq(undefined)
|
||||
})
|
||||
|
||||
|
|
@ -74,7 +74,7 @@ describe('isYouTubeVideoURL', () => {
|
|||
expect(result).to.eq(false)
|
||||
})
|
||||
it('Returns false for a non-youtube URL', () => {
|
||||
const result = isYouTubeVideoURL('https://omnivore.app/about')
|
||||
const result = isYouTubeVideoURL('https://omnivore.work/about')
|
||||
expect(result).to.eq(false)
|
||||
})
|
||||
it('Returns true for a video URL', () => {
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ export interface PreHandleResult {
|
|||
dom?: Document
|
||||
}
|
||||
|
||||
export const FAKE_URL_PREFIX = 'https://omnivore.app/no_url?q='
|
||||
export const FAKE_URL_PREFIX = 'https://omnivore.work/no_url?q='
|
||||
export const generateUniqueUrl = () => FAKE_URL_PREFIX + uuid()
|
||||
|
||||
export abstract class ContentHandler {
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -565,7 +565,7 @@ describe('Newsletter email test', () => {
|
|||
describe('preParse', () => {
|
||||
context('when email is from Substack', () => {
|
||||
it('removes the Substack footer and header', async () => {
|
||||
const url = 'https://blog.omnivore.app/p/omnivore-2021-01-31'
|
||||
const url = 'https://blog.omnivore.work/p/omnivore-2021-01-31'
|
||||
const html = load('./test/data/substack-newsletter-new.html')
|
||||
const dom = parseHTML(html).document
|
||||
const preparedDom = await new SubstackHandler().preParse(url, dom)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
const email = 'tester@omnivore.app'
|
||||
const email = 'tester@omnivore.work'
|
||||
const username = 'testuser'
|
||||
const password = 'testpassword'
|
||||
const fullName = 'Test User'
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
|
||||
describe('add link button', () => {
|
||||
before(() => {
|
||||
const email = 'tester@omnivore.app'
|
||||
const email = 'tester@omnivore.work'
|
||||
const password = 'testpassword'
|
||||
|
||||
cy.login(email, password)
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue