Rename project
This commit is contained in:
@@ -1,13 +1,13 @@
|
|||||||
# My Linkding
|
# Linkdy
|
||||||
|
|
||||||
My Linkding is a [Linkding](https://github.com/sissbruecker/linkding) client created with Flutter. [Linkding](https://github.com/sissbruecker/linkding) is a self hosted bookmark manager. The objective of this project is to give all it's users an application to manage the bookmarks from a mobile device or a desktop computer.
|
Linkdy is a [Linkding](https://github.com/sissbruecker/linkding) client created with Flutter. [Linkding](https://github.com/sissbruecker/linkding) is a self hosted bookmark manager. The objective of this project is to give all it's users an application to manage the bookmarks from a mobile device or a desktop computer.
|
||||||
|
|
||||||
### Development
|
### Development
|
||||||
1. Clone this repository.
|
1. Clone this repository.
|
||||||
2. Run ``flutter pub get`` to install all the dependencies.
|
2. Run ``flutter pub get`` to install all the dependencies.
|
||||||
3. Run the application on the desired virtual or physical device.
|
3. Run the application on the desired virtual or physical device.
|
||||||
|
|
||||||
<b>Note:</b> My Linkding uses Riverpod as the state management system. Files ended on ``.g.dart`` are auto generated by Riverpod's code generator and shouldn't be edited manually.
|
<b>Note:</b> Linkdy uses Riverpod as the state management system. Files ended on ``.g.dart`` are auto generated by Riverpod's code generator and shouldn't be edited manually.
|
||||||
The code generator can be started by running ``dart run build_runner watch``. Then, the process will start on the terminal.
|
The code generator can be started by running ``dart run build_runner watch``. Then, the process will start on the terminal.
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ if (keystorePropertiesFile.exists()) {
|
|||||||
|
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace "com.jgeek00.my_linkding"
|
namespace "com.jgeek00.linkdy"
|
||||||
compileSdkVersion 34
|
compileSdkVersion 34
|
||||||
ndkVersion flutter.ndkVersion
|
ndkVersion flutter.ndkVersion
|
||||||
|
|
||||||
@@ -48,7 +48,7 @@ android {
|
|||||||
}
|
}
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.jgeek00.my_linkding"
|
applicationId "com.jgeek00.linkdy"
|
||||||
minSdkVersion 26
|
minSdkVersion 26
|
||||||
targetSdkVersion 34
|
targetSdkVersion 34
|
||||||
versionCode flutterVersionCode.toInteger()
|
versionCode flutterVersionCode.toInteger()
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="com.jgeek00.my_linkding">
|
package="com.jgeek00.linkdy">
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<application
|
<application
|
||||||
android:label="My Linkding"
|
android:label="Linkdy"
|
||||||
android:name="${applicationName}"
|
android:name="${applicationName}"
|
||||||
android:icon="@mipmap/ic_launcher">
|
android:icon="@mipmap/ic_launcher">
|
||||||
<activity
|
<activity
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.jgeek00.my_linkding
|
package com.jgeek00.linkdy
|
||||||
|
|
||||||
import io.flutter.embedding.android.FlutterActivity
|
import io.flutter.embedding.android.FlutterActivity
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<key>CFBundleDevelopmentRegion</key>
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||||
<key>CFBundleDisplayName</key>
|
<key>CFBundleDisplayName</key>
|
||||||
<string>My Linkding</string>
|
<string>Linkdy</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>$(EXECUTABLE_NAME)</string>
|
<string>$(EXECUTABLE_NAME)</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleIdentifier</key>
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
<key>CFBundleInfoDictionaryVersion</key>
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
<string>6.0</string>
|
<string>6.0</string>
|
||||||
<key>CFBundleName</key>
|
<key>CFBundleName</key>
|
||||||
<string>my_linkding</string>
|
<string>linkdy</string>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/constants/linkding_color.dart';
|
import 'package:linkdy/constants/linkding_color.dart';
|
||||||
|
|
||||||
const List<MaterialColor> colors = [
|
const List<MaterialColor> colors = [
|
||||||
linkdingColor,
|
linkdingColor,
|
||||||
|
|||||||
@@ -28,12 +28,17 @@ enum AppLocale with BaseAppLocale<AppLocale, Translations> {
|
|||||||
en(languageCode: 'en', build: Translations.build),
|
en(languageCode: 'en', build: Translations.build),
|
||||||
es(languageCode: 'es', build: _StringsEs.build);
|
es(languageCode: 'es', build: _StringsEs.build);
|
||||||
|
|
||||||
const AppLocale({required this.languageCode, this.scriptCode, this.countryCode, required this.build}); // ignore: unused_element
|
const AppLocale(
|
||||||
|
{required this.languageCode, this.scriptCode, this.countryCode, required this.build}); // ignore: unused_element
|
||||||
|
|
||||||
@override final String languageCode;
|
@override
|
||||||
@override final String? scriptCode;
|
final String languageCode;
|
||||||
@override final String? countryCode;
|
@override
|
||||||
@override final TranslationBuilder<AppLocale, Translations> build;
|
final String? scriptCode;
|
||||||
|
@override
|
||||||
|
final String? countryCode;
|
||||||
|
@override
|
||||||
|
final TranslationBuilder<AppLocale, Translations> build;
|
||||||
|
|
||||||
/// Gets current instance managed by [LocaleSettings].
|
/// Gets current instance managed by [LocaleSettings].
|
||||||
Translations get translations => LocaleSettings.instance.translationMap[this]!;
|
Translations get translations => LocaleSettings.instance.translationMap[this]!;
|
||||||
@@ -68,7 +73,8 @@ Translations get t => LocaleSettings.instance.currentTranslations;
|
|||||||
class TranslationProvider extends BaseTranslationProvider<AppLocale, Translations> {
|
class TranslationProvider extends BaseTranslationProvider<AppLocale, Translations> {
|
||||||
TranslationProvider({required super.child}) : super(settings: LocaleSettings.instance);
|
TranslationProvider({required super.child}) : super(settings: LocaleSettings.instance);
|
||||||
|
|
||||||
static InheritedLocaleData<AppLocale, Translations> of(BuildContext context) => InheritedLocaleData.of<AppLocale, Translations>(context);
|
static InheritedLocaleData<AppLocale, Translations> of(BuildContext context) =>
|
||||||
|
InheritedLocaleData.of<AppLocale, Translations>(context);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Method B shorthand via [BuildContext] extension method.
|
/// Method B shorthand via [BuildContext] extension method.
|
||||||
@@ -89,12 +95,18 @@ class LocaleSettings extends BaseFlutterLocaleSettings<AppLocale, Translations>
|
|||||||
// static aliases (checkout base methods for documentation)
|
// static aliases (checkout base methods for documentation)
|
||||||
static AppLocale get currentLocale => instance.currentLocale;
|
static AppLocale get currentLocale => instance.currentLocale;
|
||||||
static Stream<AppLocale> getLocaleStream() => instance.getLocaleStream();
|
static Stream<AppLocale> getLocaleStream() => instance.getLocaleStream();
|
||||||
static AppLocale setLocale(AppLocale locale, {bool? listenToDeviceLocale = false}) => instance.setLocale(locale, listenToDeviceLocale: listenToDeviceLocale);
|
static AppLocale setLocale(AppLocale locale, {bool? listenToDeviceLocale = false}) =>
|
||||||
static AppLocale setLocaleRaw(String rawLocale, {bool? listenToDeviceLocale = false}) => instance.setLocaleRaw(rawLocale, listenToDeviceLocale: listenToDeviceLocale);
|
instance.setLocale(locale, listenToDeviceLocale: listenToDeviceLocale);
|
||||||
|
static AppLocale setLocaleRaw(String rawLocale, {bool? listenToDeviceLocale = false}) =>
|
||||||
|
instance.setLocaleRaw(rawLocale, listenToDeviceLocale: listenToDeviceLocale);
|
||||||
static AppLocale useDeviceLocale() => instance.useDeviceLocale();
|
static AppLocale useDeviceLocale() => instance.useDeviceLocale();
|
||||||
@Deprecated('Use [AppLocaleUtils.supportedLocales]') static List<Locale> get supportedLocales => instance.supportedLocales;
|
@Deprecated('Use [AppLocaleUtils.supportedLocales]')
|
||||||
@Deprecated('Use [AppLocaleUtils.supportedLocalesRaw]') static List<String> get supportedLocalesRaw => instance.supportedLocalesRaw;
|
static List<Locale> get supportedLocales => instance.supportedLocales;
|
||||||
static void setPluralResolver({String? language, AppLocale? locale, PluralResolver? cardinalResolver, PluralResolver? ordinalResolver}) => instance.setPluralResolver(
|
@Deprecated('Use [AppLocaleUtils.supportedLocalesRaw]')
|
||||||
|
static List<String> get supportedLocalesRaw => instance.supportedLocalesRaw;
|
||||||
|
static void setPluralResolver(
|
||||||
|
{String? language, AppLocale? locale, PluralResolver? cardinalResolver, PluralResolver? ordinalResolver}) =>
|
||||||
|
instance.setPluralResolver(
|
||||||
language: language,
|
language: language,
|
||||||
locale: locale,
|
locale: locale,
|
||||||
cardinalResolver: cardinalResolver,
|
cardinalResolver: cardinalResolver,
|
||||||
@@ -110,7 +122,8 @@ class AppLocaleUtils extends BaseAppLocaleUtils<AppLocale, Translations> {
|
|||||||
|
|
||||||
// static aliases (checkout base methods for documentation)
|
// static aliases (checkout base methods for documentation)
|
||||||
static AppLocale parse(String rawLocale) => instance.parse(rawLocale);
|
static AppLocale parse(String rawLocale) => instance.parse(rawLocale);
|
||||||
static AppLocale parseLocaleParts({required String languageCode, String? scriptCode, String? countryCode}) => instance.parseLocaleParts(languageCode: languageCode, scriptCode: scriptCode, countryCode: countryCode);
|
static AppLocale parseLocaleParts({required String languageCode, String? scriptCode, String? countryCode}) =>
|
||||||
|
instance.parseLocaleParts(languageCode: languageCode, scriptCode: scriptCode, countryCode: countryCode);
|
||||||
static AppLocale findDeviceLocale() => instance.findDeviceLocale();
|
static AppLocale findDeviceLocale() => instance.findDeviceLocale();
|
||||||
static List<Locale> get supportedLocales => instance.supportedLocales;
|
static List<Locale> get supportedLocales => instance.supportedLocales;
|
||||||
static List<String> get supportedLocalesRaw => instance.supportedLocalesRaw;
|
static List<String> get supportedLocalesRaw => instance.supportedLocalesRaw;
|
||||||
@@ -140,7 +153,8 @@ class Translations implements BaseTranslations<AppLocale, Translations> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Metadata for the translations of <en>.
|
/// Metadata for the translations of <en>.
|
||||||
@override final TranslationMetadata<AppLocale, Translations> $meta;
|
@override
|
||||||
|
final TranslationMetadata<AppLocale, Translations> $meta;
|
||||||
|
|
||||||
/// Access flat map
|
/// Access flat map
|
||||||
dynamic operator [](String key) => $meta.getTranslation(key);
|
dynamic operator [](String key) => $meta.getTranslation(key);
|
||||||
@@ -161,13 +175,14 @@ class _StringsOnboardingEn {
|
|||||||
final Translations _root; // ignore: unused_field
|
final Translations _root; // ignore: unused_field
|
||||||
|
|
||||||
// Translations
|
// Translations
|
||||||
String get title => 'Welcome to My Linkding';
|
String get title => 'Welcome to Linkdy';
|
||||||
String get subtitle => 'An application to manage your bookmarks.';
|
String get subtitle => 'An application to manage your bookmarks.';
|
||||||
String get start => 'Start';
|
String get start => 'Start';
|
||||||
String get next => 'Next';
|
String get next => 'Next';
|
||||||
String get previous => 'Previous';
|
String get previous => 'Previous';
|
||||||
String get serverRequired => 'Servidor requerido';
|
String get serverRequired => 'Servidor requerido';
|
||||||
String get serverRequiredDescription => 'My Linkding it\'s not an standalone app, it requires the Linkding server to work.\nIn order to use this application, you must deploy Linkding on your home server, VPS or any other computer.';
|
String get serverRequiredDescription =>
|
||||||
|
'Linkdy it\'s not an standalone app, it requires the Linkding server to work.\nIn order to use this application, you must deploy Linkding on your home server, VPS or any other computer.';
|
||||||
String get installationInstructions => 'Check the installation instructions on the official GitHub repository.';
|
String get installationInstructions => 'Check the installation instructions on the official GitHub repository.';
|
||||||
String get serverRunningConfirmation => 'I confirm that I have an instance of the Linkding server already running.';
|
String get serverRunningConfirmation => 'I confirm that I have an instance of the Linkding server already running.';
|
||||||
String get createConnection => 'Create a connection';
|
String get createConnection => 'Create a connection';
|
||||||
@@ -243,91 +258,134 @@ class _StringsEs implements Translations {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Metadata for the translations of <es>.
|
/// Metadata for the translations of <es>.
|
||||||
@override final TranslationMetadata<AppLocale, Translations> $meta;
|
@override
|
||||||
|
final TranslationMetadata<AppLocale, Translations> $meta;
|
||||||
|
|
||||||
/// Access flat map
|
/// Access flat map
|
||||||
@override dynamic operator[](String key) => $meta.getTranslation(key);
|
@override
|
||||||
|
dynamic operator [](String key) => $meta.getTranslation(key);
|
||||||
|
|
||||||
@override late final _StringsEs _root = this; // ignore: unused_field
|
@override
|
||||||
|
late final _StringsEs _root = this; // ignore: unused_field
|
||||||
|
|
||||||
// Translations
|
// Translations
|
||||||
@override late final _StringsOnboardingEs onboarding = _StringsOnboardingEs._(_root);
|
@override
|
||||||
@override late final _StringsLinksEs links = _StringsLinksEs._(_root);
|
late final _StringsOnboardingEs onboarding = _StringsOnboardingEs._(_root);
|
||||||
@override late final _StringsSearchEs search = _StringsSearchEs._(_root);
|
@override
|
||||||
@override late final _StringsSettingsEs settings = _StringsSettingsEs._(_root);
|
late final _StringsLinksEs links = _StringsLinksEs._(_root);
|
||||||
|
@override
|
||||||
|
late final _StringsSearchEs search = _StringsSearchEs._(_root);
|
||||||
|
@override
|
||||||
|
late final _StringsSettingsEs settings = _StringsSettingsEs._(_root);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Path: onboarding
|
// Path: onboarding
|
||||||
class _StringsOnboardingEs implements _StringsOnboardingEn {
|
class _StringsOnboardingEs implements _StringsOnboardingEn {
|
||||||
_StringsOnboardingEs._(this._root);
|
_StringsOnboardingEs._(this._root);
|
||||||
|
|
||||||
@override final _StringsEs _root; // ignore: unused_field
|
@override
|
||||||
|
final _StringsEs _root; // ignore: unused_field
|
||||||
|
|
||||||
// Translations
|
// Translations
|
||||||
@override String get title => 'Bienvenido a My Linkding';
|
@override
|
||||||
@override String get subtitle => 'Una aplicación para gestionar tus enlaces favoritos.';
|
String get title => 'Bienvenido a Linkdy';
|
||||||
@override String get start => 'Comenzar';
|
@override
|
||||||
@override String get next => 'Siguiente';
|
String get subtitle => 'Una aplicación para gestionar tus enlaces favoritos.';
|
||||||
@override String get previous => 'Anterior';
|
@override
|
||||||
@override String get serverRequired => 'Servidor requerido';
|
String get start => 'Comenzar';
|
||||||
@override String get serverRequiredDescription => 'My Linkding no es una aplicación independiente, requiere el servidor Linkding para funcionar.\nPara utilizar esta aplicación, debe instalar Linkding en su servidor doméstico, VPS o cualquier otro ordenador.';
|
@override
|
||||||
@override String get installationInstructions => 'Mira las instrucciones de instalación en el repositorio oficial en GitHub.';
|
String get next => 'Siguiente';
|
||||||
@override String get serverRunningConfirmation => 'Confirmo que tengo una instancia del servidor Linkding ya en funcionamiento.';
|
@override
|
||||||
@override String get createConnection => 'Crear una conexión';
|
String get previous => 'Anterior';
|
||||||
@override String get createConnectionSubtitle => 'Introduce todos los detalles requeridos para crear una conexión con el servidor';
|
@override
|
||||||
@override String get ipAddressOrDomain => 'Dirección IP o dominio';
|
String get serverRequired => 'Servidor requerido';
|
||||||
@override String get port => 'Puerto';
|
@override
|
||||||
@override String get token => 'Token';
|
String get serverRequiredDescription =>
|
||||||
@override String get required => 'Requerido';
|
'Linkdy no es una aplicación independiente, requiere el servidor Linkding para funcionar.\nPara utilizar esta aplicación, debe instalar Linkding en su servidor doméstico, VPS o cualquier otro ordenador.';
|
||||||
@override String get serverDetails => 'Detalles del servidor';
|
@override
|
||||||
@override String get authentication => 'Autenticación';
|
String get installationInstructions => 'Mira las instrucciones de instalación en el repositorio oficial en GitHub.';
|
||||||
@override String get testConnectionUrl => 'Probar URL de conexión';
|
@override
|
||||||
@override String get connect => 'Conectar';
|
String get serverRunningConfirmation =>
|
||||||
@override String get connecting => 'Conectando...';
|
'Confirmo que tengo una instancia del servidor Linkding ya en funcionamiento.';
|
||||||
@override String get cannotConnectToServer => 'No se puede conectar con el servidor.';
|
@override
|
||||||
|
String get createConnection => 'Crear una conexión';
|
||||||
|
@override
|
||||||
|
String get createConnectionSubtitle =>
|
||||||
|
'Introduce todos los detalles requeridos para crear una conexión con el servidor';
|
||||||
|
@override
|
||||||
|
String get ipAddressOrDomain => 'Dirección IP o dominio';
|
||||||
|
@override
|
||||||
|
String get port => 'Puerto';
|
||||||
|
@override
|
||||||
|
String get token => 'Token';
|
||||||
|
@override
|
||||||
|
String get required => 'Requerido';
|
||||||
|
@override
|
||||||
|
String get serverDetails => 'Detalles del servidor';
|
||||||
|
@override
|
||||||
|
String get authentication => 'Autenticación';
|
||||||
|
@override
|
||||||
|
String get testConnectionUrl => 'Probar URL de conexión';
|
||||||
|
@override
|
||||||
|
String get connect => 'Conectar';
|
||||||
|
@override
|
||||||
|
String get connecting => 'Conectando...';
|
||||||
|
@override
|
||||||
|
String get cannotConnectToServer => 'No se puede conectar con el servidor.';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Path: links
|
// Path: links
|
||||||
class _StringsLinksEs implements _StringsLinksEn {
|
class _StringsLinksEs implements _StringsLinksEn {
|
||||||
_StringsLinksEs._(this._root);
|
_StringsLinksEs._(this._root);
|
||||||
|
|
||||||
@override final _StringsEs _root; // ignore: unused_field
|
@override
|
||||||
|
final _StringsEs _root; // ignore: unused_field
|
||||||
|
|
||||||
// Translations
|
// Translations
|
||||||
@override String get links => 'Enlaces';
|
@override
|
||||||
@override late final _StringsLinksDatesEs dates = _StringsLinksDatesEs._(_root);
|
String get links => 'Enlaces';
|
||||||
|
@override
|
||||||
|
late final _StringsLinksDatesEs dates = _StringsLinksDatesEs._(_root);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Path: search
|
// Path: search
|
||||||
class _StringsSearchEs implements _StringsSearchEn {
|
class _StringsSearchEs implements _StringsSearchEn {
|
||||||
_StringsSearchEs._(this._root);
|
_StringsSearchEs._(this._root);
|
||||||
|
|
||||||
@override final _StringsEs _root; // ignore: unused_field
|
@override
|
||||||
|
final _StringsEs _root; // ignore: unused_field
|
||||||
|
|
||||||
// Translations
|
// Translations
|
||||||
@override String get search => 'Buscar';
|
@override
|
||||||
|
String get search => 'Buscar';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Path: settings
|
// Path: settings
|
||||||
class _StringsSettingsEs implements _StringsSettingsEn {
|
class _StringsSettingsEs implements _StringsSettingsEn {
|
||||||
_StringsSettingsEs._(this._root);
|
_StringsSettingsEs._(this._root);
|
||||||
|
|
||||||
@override final _StringsEs _root; // ignore: unused_field
|
@override
|
||||||
|
final _StringsEs _root; // ignore: unused_field
|
||||||
|
|
||||||
// Translations
|
// Translations
|
||||||
@override String get settings => 'Ajustes';
|
@override
|
||||||
@override String get disconnectFromServer => 'Desconectar del servidor';
|
String get settings => 'Ajustes';
|
||||||
|
@override
|
||||||
|
String get disconnectFromServer => 'Desconectar del servidor';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Path: links.dates
|
// Path: links.dates
|
||||||
class _StringsLinksDatesEs implements _StringsLinksDatesEn {
|
class _StringsLinksDatesEs implements _StringsLinksDatesEn {
|
||||||
_StringsLinksDatesEs._(this._root);
|
_StringsLinksDatesEs._(this._root);
|
||||||
|
|
||||||
@override final _StringsEs _root; // ignore: unused_field
|
@override
|
||||||
|
final _StringsEs _root; // ignore: unused_field
|
||||||
|
|
||||||
// Translations
|
// Translations
|
||||||
@override String todayAt({required Object time}) => 'Hoy, ${time}';
|
@override
|
||||||
@override String yesterdayAt({required Object time}) => 'Ayer, ${time}';
|
String todayAt({required Object time}) => 'Hoy, ${time}';
|
||||||
|
@override
|
||||||
|
String yesterdayAt({required Object time}) => 'Ayer, ${time}';
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Flat map(s) containing all translations.
|
/// Flat map(s) containing all translations.
|
||||||
@@ -336,34 +394,62 @@ class _StringsLinksDatesEs implements _StringsLinksDatesEn {
|
|||||||
extension on Translations {
|
extension on Translations {
|
||||||
dynamic _flatMapFunction(String path) {
|
dynamic _flatMapFunction(String path) {
|
||||||
switch (path) {
|
switch (path) {
|
||||||
case 'onboarding.title': return 'Welcome to My Linkding';
|
case 'onboarding.title':
|
||||||
case 'onboarding.subtitle': return 'An application to manage your bookmarks.';
|
return 'Welcome to Linkdy';
|
||||||
case 'onboarding.start': return 'Start';
|
case 'onboarding.subtitle':
|
||||||
case 'onboarding.next': return 'Next';
|
return 'An application to manage your bookmarks.';
|
||||||
case 'onboarding.previous': return 'Previous';
|
case 'onboarding.start':
|
||||||
case 'onboarding.serverRequired': return 'Servidor requerido';
|
return 'Start';
|
||||||
case 'onboarding.serverRequiredDescription': return 'My Linkding it\'s not an standalone app, it requires the Linkding server to work.\nIn order to use this application, you must deploy Linkding on your home server, VPS or any other computer.';
|
case 'onboarding.next':
|
||||||
case 'onboarding.installationInstructions': return 'Check the installation instructions on the official GitHub repository.';
|
return 'Next';
|
||||||
case 'onboarding.serverRunningConfirmation': return 'I confirm that I have an instance of the Linkding server already running.';
|
case 'onboarding.previous':
|
||||||
case 'onboarding.createConnection': return 'Create a connection';
|
return 'Previous';
|
||||||
case 'onboarding.createConnectionSubtitle': return 'Enter all the required details to create a connection to your server.';
|
case 'onboarding.serverRequired':
|
||||||
case 'onboarding.ipAddressOrDomain': return 'IP address or domain';
|
return 'Servidor requerido';
|
||||||
case 'onboarding.port': return 'Port';
|
case 'onboarding.serverRequiredDescription':
|
||||||
case 'onboarding.token': return 'Token';
|
return 'Linkdy it\'s not an standalone app, it requires the Linkding server to work.\nIn order to use this application, you must deploy Linkding on your home server, VPS or any other computer.';
|
||||||
case 'onboarding.required': return 'Required';
|
case 'onboarding.installationInstructions':
|
||||||
case 'onboarding.serverDetails': return 'Server details';
|
return 'Check the installation instructions on the official GitHub repository.';
|
||||||
case 'onboarding.authentication': return 'Authentication';
|
case 'onboarding.serverRunningConfirmation':
|
||||||
case 'onboarding.testConnectionUrl': return 'Test connection url';
|
return 'I confirm that I have an instance of the Linkding server already running.';
|
||||||
case 'onboarding.connect': return 'Connect';
|
case 'onboarding.createConnection':
|
||||||
case 'onboarding.connecting': return 'Connecting...';
|
return 'Create a connection';
|
||||||
case 'onboarding.cannotConnectToServer': return 'Cannot connect to the server.';
|
case 'onboarding.createConnectionSubtitle':
|
||||||
case 'links.links': return 'Links';
|
return 'Enter all the required details to create a connection to your server.';
|
||||||
case 'links.dates.todayAt': return ({required Object time}) => 'Today, ${time}';
|
case 'onboarding.ipAddressOrDomain':
|
||||||
case 'links.dates.yesterdayAt': return ({required Object time}) => 'Yesterday, ${time}';
|
return 'IP address or domain';
|
||||||
case 'search.search': return 'Search';
|
case 'onboarding.port':
|
||||||
case 'settings.settings': return 'Settings';
|
return 'Port';
|
||||||
case 'settings.disconnectFromServer': return 'Disconnect from server';
|
case 'onboarding.token':
|
||||||
default: return null;
|
return 'Token';
|
||||||
|
case 'onboarding.required':
|
||||||
|
return 'Required';
|
||||||
|
case 'onboarding.serverDetails':
|
||||||
|
return 'Server details';
|
||||||
|
case 'onboarding.authentication':
|
||||||
|
return 'Authentication';
|
||||||
|
case 'onboarding.testConnectionUrl':
|
||||||
|
return 'Test connection url';
|
||||||
|
case 'onboarding.connect':
|
||||||
|
return 'Connect';
|
||||||
|
case 'onboarding.connecting':
|
||||||
|
return 'Connecting...';
|
||||||
|
case 'onboarding.cannotConnectToServer':
|
||||||
|
return 'Cannot connect to the server.';
|
||||||
|
case 'links.links':
|
||||||
|
return 'Links';
|
||||||
|
case 'links.dates.todayAt':
|
||||||
|
return ({required Object time}) => 'Today, ${time}';
|
||||||
|
case 'links.dates.yesterdayAt':
|
||||||
|
return ({required Object time}) => 'Yesterday, ${time}';
|
||||||
|
case 'search.search':
|
||||||
|
return 'Search';
|
||||||
|
case 'settings.settings':
|
||||||
|
return 'Settings';
|
||||||
|
case 'settings.disconnectFromServer':
|
||||||
|
return 'Disconnect from server';
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -371,34 +457,62 @@ extension on Translations {
|
|||||||
extension on _StringsEs {
|
extension on _StringsEs {
|
||||||
dynamic _flatMapFunction(String path) {
|
dynamic _flatMapFunction(String path) {
|
||||||
switch (path) {
|
switch (path) {
|
||||||
case 'onboarding.title': return 'Bienvenido a My Linkding';
|
case 'onboarding.title':
|
||||||
case 'onboarding.subtitle': return 'Una aplicación para gestionar tus enlaces favoritos.';
|
return 'Bienvenido a Linkdy';
|
||||||
case 'onboarding.start': return 'Comenzar';
|
case 'onboarding.subtitle':
|
||||||
case 'onboarding.next': return 'Siguiente';
|
return 'Una aplicación para gestionar tus enlaces favoritos.';
|
||||||
case 'onboarding.previous': return 'Anterior';
|
case 'onboarding.start':
|
||||||
case 'onboarding.serverRequired': return 'Servidor requerido';
|
return 'Comenzar';
|
||||||
case 'onboarding.serverRequiredDescription': return 'My Linkding no es una aplicación independiente, requiere el servidor Linkding para funcionar.\nPara utilizar esta aplicación, debe instalar Linkding en su servidor doméstico, VPS o cualquier otro ordenador.';
|
case 'onboarding.next':
|
||||||
case 'onboarding.installationInstructions': return 'Mira las instrucciones de instalación en el repositorio oficial en GitHub.';
|
return 'Siguiente';
|
||||||
case 'onboarding.serverRunningConfirmation': return 'Confirmo que tengo una instancia del servidor Linkding ya en funcionamiento.';
|
case 'onboarding.previous':
|
||||||
case 'onboarding.createConnection': return 'Crear una conexión';
|
return 'Anterior';
|
||||||
case 'onboarding.createConnectionSubtitle': return 'Introduce todos los detalles requeridos para crear una conexión con el servidor';
|
case 'onboarding.serverRequired':
|
||||||
case 'onboarding.ipAddressOrDomain': return 'Dirección IP o dominio';
|
return 'Servidor requerido';
|
||||||
case 'onboarding.port': return 'Puerto';
|
case 'onboarding.serverRequiredDescription':
|
||||||
case 'onboarding.token': return 'Token';
|
return 'Linkdy no es una aplicación independiente, requiere el servidor Linkding para funcionar.\nPara utilizar esta aplicación, debe instalar Linkding en su servidor doméstico, VPS o cualquier otro ordenador.';
|
||||||
case 'onboarding.required': return 'Requerido';
|
case 'onboarding.installationInstructions':
|
||||||
case 'onboarding.serverDetails': return 'Detalles del servidor';
|
return 'Mira las instrucciones de instalación en el repositorio oficial en GitHub.';
|
||||||
case 'onboarding.authentication': return 'Autenticación';
|
case 'onboarding.serverRunningConfirmation':
|
||||||
case 'onboarding.testConnectionUrl': return 'Probar URL de conexión';
|
return 'Confirmo que tengo una instancia del servidor Linkding ya en funcionamiento.';
|
||||||
case 'onboarding.connect': return 'Conectar';
|
case 'onboarding.createConnection':
|
||||||
case 'onboarding.connecting': return 'Conectando...';
|
return 'Crear una conexión';
|
||||||
case 'onboarding.cannotConnectToServer': return 'No se puede conectar con el servidor.';
|
case 'onboarding.createConnectionSubtitle':
|
||||||
case 'links.links': return 'Enlaces';
|
return 'Introduce todos los detalles requeridos para crear una conexión con el servidor';
|
||||||
case 'links.dates.todayAt': return ({required Object time}) => 'Hoy, ${time}';
|
case 'onboarding.ipAddressOrDomain':
|
||||||
case 'links.dates.yesterdayAt': return ({required Object time}) => 'Ayer, ${time}';
|
return 'Dirección IP o dominio';
|
||||||
case 'search.search': return 'Buscar';
|
case 'onboarding.port':
|
||||||
case 'settings.settings': return 'Ajustes';
|
return 'Puerto';
|
||||||
case 'settings.disconnectFromServer': return 'Desconectar del servidor';
|
case 'onboarding.token':
|
||||||
default: return null;
|
return 'Token';
|
||||||
|
case 'onboarding.required':
|
||||||
|
return 'Requerido';
|
||||||
|
case 'onboarding.serverDetails':
|
||||||
|
return 'Detalles del servidor';
|
||||||
|
case 'onboarding.authentication':
|
||||||
|
return 'Autenticación';
|
||||||
|
case 'onboarding.testConnectionUrl':
|
||||||
|
return 'Probar URL de conexión';
|
||||||
|
case 'onboarding.connect':
|
||||||
|
return 'Conectar';
|
||||||
|
case 'onboarding.connecting':
|
||||||
|
return 'Conectando...';
|
||||||
|
case 'onboarding.cannotConnectToServer':
|
||||||
|
return 'No se puede conectar con el servidor.';
|
||||||
|
case 'links.links':
|
||||||
|
return 'Enlaces';
|
||||||
|
case 'links.dates.todayAt':
|
||||||
|
return ({required Object time}) => 'Hoy, ${time}';
|
||||||
|
case 'links.dates.yesterdayAt':
|
||||||
|
return ({required Object time}) => 'Ayer, ${time}';
|
||||||
|
case 'search.search':
|
||||||
|
return 'Buscar';
|
||||||
|
case 'settings.settings':
|
||||||
|
return 'Ajustes';
|
||||||
|
case 'settings.disconnectFromServer':
|
||||||
|
return 'Desconectar del servidor';
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"onboarding": {
|
"onboarding": {
|
||||||
"title": "Welcome to My Linkding",
|
"title": "Welcome to Linkdy",
|
||||||
"subtitle": "An application to manage your bookmarks.",
|
"subtitle": "An application to manage your bookmarks.",
|
||||||
"start": "Start",
|
"start": "Start",
|
||||||
"next": "Next",
|
"next": "Next",
|
||||||
"previous": "Previous",
|
"previous": "Previous",
|
||||||
"serverRequired": "Servidor requerido",
|
"serverRequired": "Servidor requerido",
|
||||||
"serverRequiredDescription": "My Linkding it's not an standalone app, it requires the Linkding server to work.\nIn order to use this application, you must deploy Linkding on your home server, VPS or any other computer.",
|
"serverRequiredDescription": "Linkdy it's not an standalone app, it requires the Linkding server to work.\nIn order to use this application, you must deploy Linkding on your home server, VPS or any other computer.",
|
||||||
"installationInstructions": "Check the installation instructions on the official GitHub repository.",
|
"installationInstructions": "Check the installation instructions on the official GitHub repository.",
|
||||||
"serverRunningConfirmation": "I confirm that I have an instance of the Linkding server already running.",
|
"serverRunningConfirmation": "I confirm that I have an instance of the Linkding server already running.",
|
||||||
"createConnection": "Create a connection",
|
"createConnection": "Create a connection",
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"onboarding": {
|
"onboarding": {
|
||||||
"title": "Bienvenido a My Linkding",
|
"title": "Bienvenido a Linkdy",
|
||||||
"subtitle": "Una aplicación para gestionar tus enlaces favoritos.",
|
"subtitle": "Una aplicación para gestionar tus enlaces favoritos.",
|
||||||
"start": "Comenzar",
|
"start": "Comenzar",
|
||||||
"next": "Siguiente",
|
"next": "Siguiente",
|
||||||
"previous": "Anterior",
|
"previous": "Anterior",
|
||||||
"serverRequired": "Servidor requerido",
|
"serverRequired": "Servidor requerido",
|
||||||
"serverRequiredDescription": "My Linkding no es una aplicación independiente, requiere el servidor Linkding para funcionar.\nPara utilizar esta aplicación, debe instalar Linkding en su servidor doméstico, VPS o cualquier otro ordenador.",
|
"serverRequiredDescription": "Linkdy no es una aplicación independiente, requiere el servidor Linkding para funcionar.\nPara utilizar esta aplicación, debe instalar Linkding en su servidor doméstico, VPS o cualquier otro ordenador.",
|
||||||
"installationInstructions": "Mira las instrucciones de instalación en el repositorio oficial en GitHub.",
|
"installationInstructions": "Mira las instrucciones de instalación en el repositorio oficial en GitHub.",
|
||||||
"serverRunningConfirmation": "Confirmo que tengo una instancia del servidor Linkding ya en funcionamiento.",
|
"serverRunningConfirmation": "Confirmo que tengo una instancia del servidor Linkding ya en funcionamiento.",
|
||||||
"createConnection": "Crear una conexión",
|
"createConnection": "Crear una conexión",
|
||||||
|
|||||||
@@ -4,16 +4,16 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
import 'package:flutter_localizations/flutter_localizations.dart';
|
import 'package:flutter_localizations/flutter_localizations.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:my_linkding/constants/global_keys.dart';
|
import 'package:linkdy/constants/global_keys.dart';
|
||||||
import 'package:dynamic_color/dynamic_color.dart';
|
import 'package:dynamic_color/dynamic_color.dart';
|
||||||
import 'package:shared_preferences/shared_preferences.dart';
|
import 'package:shared_preferences/shared_preferences.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/config/theme.dart';
|
import 'package:linkdy/config/theme.dart';
|
||||||
import 'package:my_linkding/constants/colors.dart';
|
import 'package:linkdy/constants/colors.dart';
|
||||||
import 'package:my_linkding/i18n/strings.g.dart';
|
import 'package:linkdy/i18n/strings.g.dart';
|
||||||
import 'package:my_linkding/providers/router_provider.dart';
|
import 'package:linkdy/providers/router_provider.dart';
|
||||||
import 'package:my_linkding/providers/shared_preferences_provider.dart';
|
import 'package:linkdy/providers/shared_preferences_provider.dart';
|
||||||
import 'package:my_linkding/utils/http_overrides.dart';
|
import 'package:linkdy/utils/http_overrides.dart';
|
||||||
|
|
||||||
void main() async {
|
void main() async {
|
||||||
WidgetsFlutterBinding.ensureInitialized();
|
WidgetsFlutterBinding.ensureInitialized();
|
||||||
@@ -44,7 +44,7 @@ class MyApp extends ConsumerWidget {
|
|||||||
Widget build(BuildContext context, WidgetRef ref) {
|
Widget build(BuildContext context, WidgetRef ref) {
|
||||||
return DynamicColorBuilder(
|
return DynamicColorBuilder(
|
||||||
builder: (lightDynamic, darkDynamic) => MaterialApp.router(
|
builder: (lightDynamic, darkDynamic) => MaterialApp.router(
|
||||||
title: 'My Linkding',
|
title: 'Linkdy',
|
||||||
theme: lightDynamic != null ? lightTheme(lightDynamic) : lightThemeOldVersions(colors[0]),
|
theme: lightDynamic != null ? lightTheme(lightDynamic) : lightThemeOldVersions(colors[0]),
|
||||||
darkTheme: darkDynamic != null ? darkTheme(darkDynamic) : darkThemeOldVersions(colors[0]),
|
darkTheme: darkDynamic != null ? darkTheme(darkDynamic) : darkThemeOldVersions(colors[0]),
|
||||||
locale: TranslationProvider.of(context).flutterLocale,
|
locale: TranslationProvider.of(context).flutterLocale,
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:my_linkding/models/server_instance.dart';
|
import 'package:linkdy/models/server_instance.dart';
|
||||||
import 'package:shared_preferences/shared_preferences.dart';
|
import 'package:shared_preferences/shared_preferences.dart';
|
||||||
|
|
||||||
class AppStatus {
|
class AppStatus {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'package:dio/dio.dart';
|
import 'package:dio/dio.dart';
|
||||||
import 'package:my_linkding/providers/server_instances_provider.dart';
|
import 'package:linkdy/providers/server_instances_provider.dart';
|
||||||
import 'package:my_linkding/services/api_client.dart';
|
import 'package:linkdy/services/api_client.dart';
|
||||||
import 'package:my_linkding/utils/api_base_url.dart';
|
import 'package:linkdy/utils/api_base_url.dart';
|
||||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||||
|
|
||||||
part 'api_client_provider.g.dart';
|
part 'api_client_provider.g.dart';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/models/app_status.dart';
|
import 'package:linkdy/models/app_status.dart';
|
||||||
import 'package:shared_preferences/shared_preferences.dart';
|
import 'package:shared_preferences/shared_preferences.dart';
|
||||||
|
|
||||||
part 'app_status_provider.g.dart';
|
part 'app_status_provider.g.dart';
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:go_router/go_router.dart';
|
import 'package:go_router/go_router.dart';
|
||||||
import 'package:my_linkding/providers/api_client_provider.dart';
|
import 'package:linkdy/providers/api_client_provider.dart';
|
||||||
import 'package:my_linkding/router/paths.dart';
|
import 'package:linkdy/router/paths.dart';
|
||||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/router/routes.dart';
|
import 'package:linkdy/router/routes.dart';
|
||||||
|
|
||||||
part 'router_provider.g.dart';
|
part 'router_provider.g.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:my_linkding/config/shared_preferences_keys.dart';
|
import 'package:linkdy/config/shared_preferences_keys.dart';
|
||||||
import 'package:my_linkding/providers/shared_preferences_provider.dart';
|
import 'package:linkdy/providers/shared_preferences_provider.dart';
|
||||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/models/server_instance.dart';
|
import 'package:linkdy/models/server_instance.dart';
|
||||||
|
|
||||||
part 'server_instances_provider.g.dart';
|
part 'server_instances_provider.g.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:go_router/go_router.dart';
|
import 'package:go_router/go_router.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/screens/links/ui/links.dart';
|
import 'package:linkdy/screens/links/ui/links.dart';
|
||||||
import 'package:my_linkding/screens/onboarding/ui/onboarding.dart';
|
import 'package:linkdy/screens/onboarding/ui/onboarding.dart';
|
||||||
import 'package:my_linkding/screens/search/ui/search.dart';
|
import 'package:linkdy/screens/search/ui/search.dart';
|
||||||
import 'package:my_linkding/screens/settings/ui/settings.dart';
|
import 'package:linkdy/screens/settings/ui/settings.dart';
|
||||||
import 'package:my_linkding/screens/webview/ui/webview.dart';
|
import 'package:linkdy/screens/webview/ui/webview.dart';
|
||||||
import 'package:my_linkding/widgets/layout.dart';
|
import 'package:linkdy/widgets/layout.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/models/data/bookmarks.dart';
|
import 'package:linkdy/models/data/bookmarks.dart';
|
||||||
import 'package:my_linkding/router/paths.dart';
|
import 'package:linkdy/router/paths.dart';
|
||||||
|
|
||||||
final rootNavigatorKey = GlobalKey<NavigatorState>();
|
final rootNavigatorKey = GlobalKey<NavigatorState>();
|
||||||
final linksNavigatorKey = GlobalKey<NavigatorState>();
|
final linksNavigatorKey = GlobalKey<NavigatorState>();
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/screens/links/model/links.model.dart';
|
import 'package:linkdy/screens/links/model/links.model.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/models/api_response.dart';
|
import 'package:linkdy/models/api_response.dart';
|
||||||
import 'package:my_linkding/models/data/bookmarks.dart';
|
import 'package:linkdy/models/data/bookmarks.dart';
|
||||||
import 'package:my_linkding/providers/api_client_provider.dart';
|
import 'package:linkdy/providers/api_client_provider.dart';
|
||||||
|
|
||||||
part 'links.provider.g.dart';
|
part 'links.provider.g.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/screens/links/provider/links.provider.dart';
|
import 'package:linkdy/screens/links/provider/links.provider.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/providers/router_provider.dart';
|
import 'package:linkdy/providers/router_provider.dart';
|
||||||
import 'package:my_linkding/router/paths.dart';
|
import 'package:linkdy/router/paths.dart';
|
||||||
import 'package:my_linkding/i18n/strings.g.dart';
|
import 'package:linkdy/i18n/strings.g.dart';
|
||||||
|
|
||||||
class Links extends ConsumerWidget {
|
class Links extends ConsumerWidget {
|
||||||
const Links({Key? key}) : super(key: key);
|
const Links({Key? key}) : super(key: key);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:my_linkding/helpers/wrapped_class.dart';
|
import 'package:linkdy/helpers/wrapped_class.dart';
|
||||||
|
|
||||||
class ConnectModel {
|
class ConnectModel {
|
||||||
final bool isConnecting;
|
final bool isConnecting;
|
||||||
|
|||||||
@@ -3,19 +3,19 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:uuid/uuid.dart';
|
import 'package:uuid/uuid.dart';
|
||||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/screens/onboarding/model/connect.model.dart';
|
import 'package:linkdy/screens/onboarding/model/connect.model.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/providers/server_instances_provider.dart';
|
import 'package:linkdy/providers/server_instances_provider.dart';
|
||||||
import 'package:my_linkding/utils/api_base_url.dart';
|
import 'package:linkdy/utils/api_base_url.dart';
|
||||||
import 'package:my_linkding/i18n/strings.g.dart';
|
import 'package:linkdy/i18n/strings.g.dart';
|
||||||
import 'package:my_linkding/constants/enums.dart';
|
import 'package:linkdy/constants/enums.dart';
|
||||||
import 'package:my_linkding/utils/process_modal.dart';
|
import 'package:linkdy/utils/process_modal.dart';
|
||||||
import 'package:my_linkding/utils/snackbar.dart';
|
import 'package:linkdy/utils/snackbar.dart';
|
||||||
import 'package:my_linkding/models/server_instance.dart';
|
import 'package:linkdy/models/server_instance.dart';
|
||||||
import 'package:my_linkding/providers/api_client_provider.dart';
|
import 'package:linkdy/providers/api_client_provider.dart';
|
||||||
import 'package:my_linkding/services/api_client.dart';
|
import 'package:linkdy/services/api_client.dart';
|
||||||
import 'package:my_linkding/constants/regexp.dart';
|
import 'package:linkdy/constants/regexp.dart';
|
||||||
import 'package:my_linkding/helpers/wrapped_class.dart';
|
import 'package:linkdy/helpers/wrapped_class.dart';
|
||||||
|
|
||||||
part 'connect.provider.g.dart';
|
part 'connect.provider.g.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/screens/onboarding/model/onboarding.model.dart';
|
import 'package:linkdy/screens/onboarding/model/onboarding.model.dart';
|
||||||
|
|
||||||
part 'onboarding.provider.g.dart';
|
part 'onboarding.provider.g.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -2,14 +2,14 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:segmented_button_slide/segmented_button_slide.dart';
|
import 'package:segmented_button_slide/segmented_button_slide.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/screens/onboarding/ui/sliver_top_bar.dart';
|
import 'package:linkdy/screens/onboarding/ui/sliver_top_bar.dart';
|
||||||
import 'package:my_linkding/screens/onboarding/provider/connect.provider.dart';
|
import 'package:linkdy/screens/onboarding/provider/connect.provider.dart';
|
||||||
import 'package:my_linkding/screens/onboarding/provider/onboarding.provider.dart';
|
import 'package:linkdy/screens/onboarding/provider/onboarding.provider.dart';
|
||||||
import 'package:my_linkding/widgets/section_label.dart';
|
import 'package:linkdy/widgets/section_label.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/utils/open_url.dart';
|
import 'package:linkdy/utils/open_url.dart';
|
||||||
import 'package:my_linkding/constants/enums.dart';
|
import 'package:linkdy/constants/enums.dart';
|
||||||
import 'package:my_linkding/i18n/strings.g.dart';
|
import 'package:linkdy/i18n/strings.g.dart';
|
||||||
|
|
||||||
class OnboardingConnect extends ConsumerWidget {
|
class OnboardingConnect extends ConsumerWidget {
|
||||||
const OnboardingConnect({Key? key}) : super(key: key);
|
const OnboardingConnect({Key? key}) : super(key: key);
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/screens/onboarding/provider/onboarding.provider.dart';
|
import 'package:linkdy/screens/onboarding/provider/onboarding.provider.dart';
|
||||||
import 'package:my_linkding/screens/onboarding/ui/connect.dart';
|
import 'package:linkdy/screens/onboarding/ui/connect.dart';
|
||||||
import 'package:my_linkding/screens/onboarding/ui/server_required.dart';
|
import 'package:linkdy/screens/onboarding/ui/server_required.dart';
|
||||||
import 'package:my_linkding/screens/onboarding/ui/welcome.dart';
|
import 'package:linkdy/screens/onboarding/ui/welcome.dart';
|
||||||
import 'package:my_linkding/widgets/system_overlay_style.dart';
|
import 'package:linkdy/widgets/system_overlay_style.dart';
|
||||||
|
|
||||||
class Onboarding extends ConsumerWidget {
|
class Onboarding extends ConsumerWidget {
|
||||||
const Onboarding({Key? key}) : super(key: key);
|
const Onboarding({Key? key}) : super(key: key);
|
||||||
|
|||||||
@@ -2,12 +2,12 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_svg/flutter_svg.dart';
|
import 'package:flutter_svg/flutter_svg.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/screens/onboarding/provider/onboarding.provider.dart';
|
import 'package:linkdy/screens/onboarding/provider/onboarding.provider.dart';
|
||||||
import 'package:my_linkding/screens/onboarding/ui/sliver_top_bar.dart';
|
import 'package:linkdy/screens/onboarding/ui/sliver_top_bar.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/constants/urls.dart';
|
import 'package:linkdy/constants/urls.dart';
|
||||||
import 'package:my_linkding/i18n/strings.g.dart';
|
import 'package:linkdy/i18n/strings.g.dart';
|
||||||
import 'package:my_linkding/utils/open_url.dart';
|
import 'package:linkdy/utils/open_url.dart';
|
||||||
|
|
||||||
class OnboardingServerRequired extends ConsumerWidget {
|
class OnboardingServerRequired extends ConsumerWidget {
|
||||||
const OnboardingServerRequired({Key? key}) : super(key: key);
|
const OnboardingServerRequired({Key? key}) : super(key: key);
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:my_linkding/i18n/strings.g.dart';
|
import 'package:linkdy/i18n/strings.g.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/screens/onboarding/provider/onboarding.provider.dart';
|
import 'package:linkdy/screens/onboarding/provider/onboarding.provider.dart';
|
||||||
|
|
||||||
class OnboardingWelcome extends ConsumerWidget {
|
class OnboardingWelcome extends ConsumerWidget {
|
||||||
const OnboardingWelcome({Key? key}) : super(key: key);
|
const OnboardingWelcome({Key? key}) : super(key: key);
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/i18n/strings.g.dart';
|
import 'package:linkdy/i18n/strings.g.dart';
|
||||||
import 'package:my_linkding/providers/api_client_provider.dart';
|
import 'package:linkdy/providers/api_client_provider.dart';
|
||||||
|
|
||||||
class Settings extends ConsumerWidget {
|
class Settings extends ConsumerWidget {
|
||||||
const Settings({Key? key}) : super(key: key);
|
const Settings({Key? key}) : super(key: key);
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||||
import 'package:webview_flutter/webview_flutter.dart';
|
import 'package:webview_flutter/webview_flutter.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/screens/webview/model/webview.model.dart';
|
import 'package:linkdy/screens/webview/model/webview.model.dart';
|
||||||
|
|
||||||
part 'webview.provider.g.dart';
|
part 'webview.provider.g.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/models/data/bookmarks.dart';
|
import 'package:linkdy/models/data/bookmarks.dart';
|
||||||
import 'package:my_linkding/screens/webview/provider/webview.provider.dart';
|
import 'package:linkdy/screens/webview/provider/webview.provider.dart';
|
||||||
import 'package:webview_flutter/webview_flutter.dart';
|
import 'package:webview_flutter/webview_flutter.dart';
|
||||||
|
|
||||||
class WebView extends ConsumerWidget {
|
class WebView extends ConsumerWidget {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:dio/dio.dart';
|
import 'package:dio/dio.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/models/api_response.dart';
|
import 'package:linkdy/models/api_response.dart';
|
||||||
import 'package:my_linkding/models/data/bookmarks.dart';
|
import 'package:linkdy/models/data/bookmarks.dart';
|
||||||
import 'package:my_linkding/models/server_instance.dart';
|
import 'package:linkdy/models/server_instance.dart';
|
||||||
|
|
||||||
class ApiClient {
|
class ApiClient {
|
||||||
final ServerInstance serverInstance;
|
final ServerInstance serverInstance;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:my_linkding/models/server_instance.dart';
|
import 'package:linkdy/models/server_instance.dart';
|
||||||
|
|
||||||
String apiBaseUrl(ServerInstance server) {
|
String apiBaseUrl(ServerInstance server) {
|
||||||
return "${server.method}://${server.ipDomain}${server.port != null ? ':${server.port}' : ""}${server.path ?? ""}/api";
|
return "${server.method}://${server.ipDomain}${server.port != null ? ':${server.port}' : ""}${server.path ?? ""}/api";
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/widgets/process_dialog.dart';
|
import 'package:linkdy/widgets/process_dialog.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/router/routes.dart';
|
import 'package:linkdy/router/routes.dart';
|
||||||
|
|
||||||
class ProcessModal {
|
class ProcessModal {
|
||||||
void open(String message) async {
|
void open(String message) async {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
// ignore_for_file: use_build_context_synchronously
|
// ignore_for_file: use_build_context_synchronously
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:my_linkding/constants/global_keys.dart';
|
import 'package:linkdy/constants/global_keys.dart';
|
||||||
|
|
||||||
void showSnacbkar({
|
void showSnacbkar({
|
||||||
required String label,
|
required String label,
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:animations/animations.dart';
|
import 'package:animations/animations.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:go_router/go_router.dart';
|
import 'package:go_router/go_router.dart';
|
||||||
import 'package:my_linkding/i18n/strings.g.dart';
|
import 'package:linkdy/i18n/strings.g.dart';
|
||||||
|
|
||||||
import 'package:my_linkding/widgets/system_overlay_style.dart';
|
import 'package:linkdy/widgets/system_overlay_style.dart';
|
||||||
|
|
||||||
class Layout extends StatelessWidget {
|
class Layout extends StatelessWidget {
|
||||||
final StatefulNavigationShell navigationShell;
|
final StatefulNavigationShell navigationShell;
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ project(runner LANGUAGES CXX)
|
|||||||
|
|
||||||
# The name of the executable created for the application. Change this to change
|
# The name of the executable created for the application. Change this to change
|
||||||
# the on-disk name of your application.
|
# the on-disk name of your application.
|
||||||
set(BINARY_NAME "my_linkding")
|
set(BINARY_NAME "linkdy")
|
||||||
# The unique GTK application identifier for this application. See:
|
# The unique GTK application identifier for this application. See:
|
||||||
# https://wiki.gnome.org/HowDoI/ChooseApplicationID
|
# https://wiki.gnome.org/HowDoI/ChooseApplicationID
|
||||||
set(APPLICATION_ID "com.example.my_linkding")
|
set(APPLICATION_ID "com.example.linkdy")
|
||||||
|
|
||||||
# Explicitly opt in to modern CMake behaviors to avoid warnings with recent
|
# Explicitly opt in to modern CMake behaviors to avoid warnings with recent
|
||||||
# versions of CMake.
|
# versions of CMake.
|
||||||
|
|||||||
@@ -40,11 +40,11 @@ static void my_application_activate(GApplication* application) {
|
|||||||
if (use_header_bar) {
|
if (use_header_bar) {
|
||||||
GtkHeaderBar* header_bar = GTK_HEADER_BAR(gtk_header_bar_new());
|
GtkHeaderBar* header_bar = GTK_HEADER_BAR(gtk_header_bar_new());
|
||||||
gtk_widget_show(GTK_WIDGET(header_bar));
|
gtk_widget_show(GTK_WIDGET(header_bar));
|
||||||
gtk_header_bar_set_title(header_bar, "my_linkding");
|
gtk_header_bar_set_title(header_bar, "linkdy");
|
||||||
gtk_header_bar_set_show_close_button(header_bar, TRUE);
|
gtk_header_bar_set_show_close_button(header_bar, TRUE);
|
||||||
gtk_window_set_titlebar(window, GTK_WIDGET(header_bar));
|
gtk_window_set_titlebar(window, GTK_WIDGET(header_bar));
|
||||||
} else {
|
} else {
|
||||||
gtk_window_set_title(window, "my_linkding");
|
gtk_window_set_title(window, "linkdy");
|
||||||
}
|
}
|
||||||
|
|
||||||
gtk_window_set_default_size(window, 1280, 720);
|
gtk_window_set_default_size(window, 1280, 720);
|
||||||
|
|||||||
@@ -68,7 +68,7 @@
|
|||||||
331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = "<group>"; };
|
331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = "<group>"; };
|
||||||
333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; };
|
333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; };
|
||||||
335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; };
|
335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; };
|
||||||
33CC10ED2044A3C60003C045 /* my_linkding.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = my_linkding.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
33CC10ED2044A3C60003C045 /* linkdy.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = linkdy.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||||
33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = "<group>"; };
|
33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = "<group>"; };
|
||||||
33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||||
@@ -158,7 +158,7 @@
|
|||||||
33CC10EE2044A3C60003C045 /* Products */ = {
|
33CC10EE2044A3C60003C045 /* Products */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
33CC10ED2044A3C60003C045 /* my_linkding.app */,
|
33CC10ED2044A3C60003C045 /* linkdy.app */,
|
||||||
331C80D5294CF71000263BE5 /* RunnerTests.xctest */,
|
331C80D5294CF71000263BE5 /* RunnerTests.xctest */,
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
@@ -249,7 +249,7 @@
|
|||||||
);
|
);
|
||||||
name = Runner;
|
name = Runner;
|
||||||
productName = Runner;
|
productName = Runner;
|
||||||
productReference = 33CC10ED2044A3C60003C045 /* my_linkding.app */;
|
productReference = 33CC10ED2044A3C60003C045 /* linkdy.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
/* End PBXNativeTarget section */
|
/* End PBXNativeTarget section */
|
||||||
@@ -481,7 +481,7 @@
|
|||||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.myLinkding.RunnerTests;
|
PRODUCT_BUNDLE_IDENTIFIER = com.example.myLinkding.RunnerTests;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/my_linkding.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/my_linkding";
|
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/linkdy.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/linkdy";
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
};
|
};
|
||||||
@@ -496,7 +496,7 @@
|
|||||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.myLinkding.RunnerTests;
|
PRODUCT_BUNDLE_IDENTIFIER = com.example.myLinkding.RunnerTests;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/my_linkding.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/my_linkding";
|
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/linkdy.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/linkdy";
|
||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
};
|
};
|
||||||
@@ -511,7 +511,7 @@
|
|||||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.myLinkding.RunnerTests;
|
PRODUCT_BUNDLE_IDENTIFIER = com.example.myLinkding.RunnerTests;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/my_linkding.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/my_linkding";
|
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/linkdy.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/linkdy";
|
||||||
};
|
};
|
||||||
name = Profile;
|
name = Profile;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
||||||
BuildableName = "my_linkding.app"
|
BuildableName = "linkdy.app"
|
||||||
BlueprintName = "Runner"
|
BlueprintName = "Runner"
|
||||||
ReferencedContainer = "container:Runner.xcodeproj">
|
ReferencedContainer = "container:Runner.xcodeproj">
|
||||||
</BuildableReference>
|
</BuildableReference>
|
||||||
@@ -31,7 +31,7 @@
|
|||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
||||||
BuildableName = "my_linkding.app"
|
BuildableName = "linkdy.app"
|
||||||
BlueprintName = "Runner"
|
BlueprintName = "Runner"
|
||||||
ReferencedContainer = "container:Runner.xcodeproj">
|
ReferencedContainer = "container:Runner.xcodeproj">
|
||||||
</BuildableReference>
|
</BuildableReference>
|
||||||
@@ -65,7 +65,7 @@
|
|||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
||||||
BuildableName = "my_linkding.app"
|
BuildableName = "linkdy.app"
|
||||||
BlueprintName = "Runner"
|
BlueprintName = "Runner"
|
||||||
ReferencedContainer = "container:Runner.xcodeproj">
|
ReferencedContainer = "container:Runner.xcodeproj">
|
||||||
</BuildableReference>
|
</BuildableReference>
|
||||||
@@ -82,7 +82,7 @@
|
|||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
|
||||||
BuildableName = "my_linkding.app"
|
BuildableName = "linkdy.app"
|
||||||
BlueprintName = "Runner"
|
BlueprintName = "Runner"
|
||||||
ReferencedContainer = "container:Runner.xcodeproj">
|
ReferencedContainer = "container:Runner.xcodeproj">
|
||||||
</BuildableReference>
|
</BuildableReference>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
// 'flutter create' template.
|
// 'flutter create' template.
|
||||||
|
|
||||||
// The application's name. By default this is also the title of the Flutter window.
|
// The application's name. By default this is also the title of the Flutter window.
|
||||||
PRODUCT_NAME = my_linkding
|
PRODUCT_NAME = linkdy
|
||||||
|
|
||||||
// The application's bundle identifier
|
// The application's bundle identifier
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.myLinkding
|
PRODUCT_BUNDLE_IDENTIFIER = com.example.myLinkding
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
name: my_linkding
|
name: linkdy
|
||||||
description: "Linkding client."
|
description: "Linkding client."
|
||||||
# The following line prevents the package from being accidentally published to
|
# The following line prevents the package from being accidentally published to
|
||||||
# pub.dev using `flutter pub publish`. This is preferred for private packages.
|
# pub.dev using `flutter pub publish`. This is preferred for private packages.
|
||||||
|
|||||||
@@ -21,13 +21,13 @@
|
|||||||
<!-- iOS meta tags & icons -->
|
<!-- iOS meta tags & icons -->
|
||||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
||||||
<meta name="apple-mobile-web-app-title" content="my_linkding">
|
<meta name="apple-mobile-web-app-title" content="linkdy">
|
||||||
<link rel="apple-touch-icon" href="icons/Icon-192.png">
|
<link rel="apple-touch-icon" href="icons/Icon-192.png">
|
||||||
|
|
||||||
<!-- Favicon -->
|
<!-- Favicon -->
|
||||||
<link rel="icon" type="image/png" href="favicon.png">
|
<link rel="icon" type="image/png" href="favicon.png">
|
||||||
|
|
||||||
<title>my_linkding</title>
|
<title>linkdy</title>
|
||||||
<link rel="manifest" href="manifest.json">
|
<link rel="manifest" href="manifest.json">
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "my_linkding",
|
"name": "linkdy",
|
||||||
"short_name": "my_linkding",
|
"short_name": "linkdy",
|
||||||
"start_url": ".",
|
"start_url": ".",
|
||||||
"display": "standalone",
|
"display": "standalone",
|
||||||
"background_color": "#0175C2",
|
"background_color": "#0175C2",
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Project-level configuration.
|
# Project-level configuration.
|
||||||
cmake_minimum_required(VERSION 3.14)
|
cmake_minimum_required(VERSION 3.14)
|
||||||
project(my_linkding LANGUAGES CXX)
|
project(linkdy LANGUAGES CXX)
|
||||||
|
|
||||||
# The name of the executable created for the application. Change this to change
|
# The name of the executable created for the application. Change this to change
|
||||||
# the on-disk name of your application.
|
# the on-disk name of your application.
|
||||||
set(BINARY_NAME "my_linkding")
|
set(BINARY_NAME "linkdy")
|
||||||
|
|
||||||
# Explicitly opt in to modern CMake behaviors to avoid warnings with recent
|
# Explicitly opt in to modern CMake behaviors to avoid warnings with recent
|
||||||
# versions of CMake.
|
# versions of CMake.
|
||||||
|
|||||||
@@ -90,12 +90,12 @@ BEGIN
|
|||||||
BLOCK "040904e4"
|
BLOCK "040904e4"
|
||||||
BEGIN
|
BEGIN
|
||||||
VALUE "CompanyName", "com.example" "\0"
|
VALUE "CompanyName", "com.example" "\0"
|
||||||
VALUE "FileDescription", "my_linkding" "\0"
|
VALUE "FileDescription", "linkdy" "\0"
|
||||||
VALUE "FileVersion", VERSION_AS_STRING "\0"
|
VALUE "FileVersion", VERSION_AS_STRING "\0"
|
||||||
VALUE "InternalName", "my_linkding" "\0"
|
VALUE "InternalName", "linkdy" "\0"
|
||||||
VALUE "LegalCopyright", "Copyright (C) 2024 com.example. All rights reserved." "\0"
|
VALUE "LegalCopyright", "Copyright (C) 2024 com.example. All rights reserved." "\0"
|
||||||
VALUE "OriginalFilename", "my_linkding.exe" "\0"
|
VALUE "OriginalFilename", "linkdy.exe" "\0"
|
||||||
VALUE "ProductName", "my_linkding" "\0"
|
VALUE "ProductName", "linkdy" "\0"
|
||||||
VALUE "ProductVersion", VERSION_AS_STRING "\0"
|
VALUE "ProductVersion", VERSION_AS_STRING "\0"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev,
|
|||||||
FlutterWindow window(project);
|
FlutterWindow window(project);
|
||||||
Win32Window::Point origin(10, 10);
|
Win32Window::Point origin(10, 10);
|
||||||
Win32Window::Size size(1280, 720);
|
Win32Window::Size size(1280, 720);
|
||||||
if (!window.Create(L"my_linkding", origin, size)) {
|
if (!window.Create(L"linkdy", origin, size)) {
|
||||||
return EXIT_FAILURE;
|
return EXIT_FAILURE;
|
||||||
}
|
}
|
||||||
window.SetQuitOnClose(true);
|
window.SetQuitOnClose(true);
|
||||||
|
|||||||
Reference in New Issue
Block a user