From dd716a0b117283ef34d5ad20141fbfccb4ed6826 Mon Sep 17 00:00:00 2001 From: Philemon Merlet Date: Fri, 16 Feb 2024 15:17:00 +0100 Subject: [PATCH] Remove deprecated methods and associated widgets --- android/build.gradle | 2 +- .../io/didomi/fluttersdk/DidomiPlugin.kt | 303 --------------- example/ios/Podfile.lock | 4 +- .../testapps/sample_for_purpose_tests.dart | 8 - .../lib/testapps/sample_for_vendor_tests.dart | 8 - .../lib/widgets/get_disabled_purpose_ids.dart | 31 -- .../lib/widgets/get_disabled_purposes.dart | 34 -- .../lib/widgets/get_disabled_vendor_ids.dart | 31 -- example/lib/widgets/get_disabled_vendors.dart | 34 -- .../lib/widgets/get_enabled_purpose_ids.dart | 31 -- example/lib/widgets/get_enabled_purposes.dart | 34 -- .../lib/widgets/get_enabled_vendor_ids.dart | 31 -- example/lib/widgets/get_enabled_vendors.dart | 34 -- .../get_user_consent_status_for_purpose.dart | 33 -- .../get_user_consent_status_for_vendor.dart | 33 -- ...atus_for_vendor_and_required_purposes.dart | 33 -- ...egitimate_interest_status_for_purpose.dart | 33 -- ...legitimate_interest_status_for_vendor.dart | 33 -- ...atus_for_vendor_and_required_purposes.dart | 33 -- .../widgets/get_user_status_for_vendor.dart | 33 -- example/lib/widgets/set_user.dart | 18 +- ios/Classes/SwiftDidomiSdkPlugin.swift | 350 ------------------ ios/didomi_sdk.podspec | 2 +- lib/didomi_sdk.dart | 134 ------- 24 files changed, 5 insertions(+), 1315 deletions(-) delete mode 100644 example/lib/widgets/get_disabled_purpose_ids.dart delete mode 100644 example/lib/widgets/get_disabled_purposes.dart delete mode 100644 example/lib/widgets/get_disabled_vendor_ids.dart delete mode 100644 example/lib/widgets/get_disabled_vendors.dart delete mode 100644 example/lib/widgets/get_enabled_purpose_ids.dart delete mode 100644 example/lib/widgets/get_enabled_purposes.dart delete mode 100644 example/lib/widgets/get_enabled_vendor_ids.dart delete mode 100644 example/lib/widgets/get_enabled_vendors.dart delete mode 100644 example/lib/widgets/get_user_consent_status_for_purpose.dart delete mode 100644 example/lib/widgets/get_user_consent_status_for_vendor.dart delete mode 100644 example/lib/widgets/get_user_consent_status_for_vendor_and_required_purposes.dart delete mode 100644 example/lib/widgets/get_user_legitimate_interest_status_for_purpose.dart delete mode 100644 example/lib/widgets/get_user_legitimate_interest_status_for_vendor.dart delete mode 100644 example/lib/widgets/get_user_legitimate_interest_status_for_vendor_and_required_purposes.dart delete mode 100644 example/lib/widgets/get_user_status_for_vendor.dart diff --git a/android/build.gradle b/android/build.gradle index 57afc333..61692eb6 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -55,6 +55,6 @@ android { dependencies { implementation("org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version") - implementation("io.didomi.sdk:android:1.90.0") + implementation("io.didomi.sdk:android:2.0.0") implementation("androidx.multidex:multidex:2.0.1") } diff --git a/android/src/main/kotlin/io/didomi/fluttersdk/DidomiPlugin.kt b/android/src/main/kotlin/io/didomi/fluttersdk/DidomiPlugin.kt index 40bbc2a1..0dffd720 100644 --- a/android/src/main/kotlin/io/didomi/fluttersdk/DidomiPlugin.kt +++ b/android/src/main/kotlin/io/didomi/fluttersdk/DidomiPlugin.kt @@ -140,26 +140,10 @@ class DidomiPlugin : FlutterPlugin, MethodCallHandler, ActivityAware { "getUserStatus" -> getUserStatus(result) - "getDisabledPurposeIds" -> getDisabledPurposeIds(result) - - "getDisabledVendorIds" -> getDisabledVendorIds(result) - - "getEnabledPurposeIds" -> getEnabledPurposeIds(result) - - "getEnabledVendorIds" -> getEnabledVendorIds(result) - "getRequiredPurposeIds" -> getRequiredPurposeIds(result) "getRequiredVendorIds" -> getRequiredVendorIds(result) - "getDisabledPurposes" -> getDisabledPurposes(result) - - "getDisabledVendors" -> getDisabledVendors(result) - - "getEnabledPurposes" -> getEnabledPurposes(result) - - "getEnabledVendors" -> getEnabledVendors(result) - "getRequiredPurposes" -> getRequiredPurposes(result) "getRequiredVendors" -> getRequiredVendors(result) @@ -174,20 +158,6 @@ class DidomiPlugin : FlutterPlugin, MethodCallHandler, ActivityAware { "setUserDisagreeToAll" -> setUserDisagreeToAll(result) - "getUserConsentStatusForPurpose" -> getUserConsentStatusForPurpose(call, result) - - "getUserConsentStatusForVendor" -> getUserConsentStatusForVendor(call, result) - - "getUserConsentStatusForVendorAndRequiredPurposes" -> getUserConsentStatusForVendorAndRequiredPurposes(call, result) - - "getUserLegitimateInterestStatusForPurpose" -> getUserLegitimateInterestStatusForPurpose(call, result) - - "getUserLegitimateInterestStatusForVendor" -> getUserLegitimateInterestStatusForVendor(call, result) - - "getUserLegitimateInterestStatusForVendorAndRequiredPurposes" -> getUserLegitimateInterestStatusForVendorAndRequiredPurposes(call, result) - - "getUserStatusForVendor" -> getUserStatusForVendor(call, result) - "setUserStatus" -> setUserStatus(call, result) "setUserStatusGlobally" -> setUserStatusGlobally(call, result) @@ -375,54 +345,6 @@ class DidomiPlugin : FlutterPlugin, MethodCallHandler, ActivityAware { } } - /** - * Get the IDs of the disabled purposes - */ - private fun getDisabledPurposeIds(result: Result) { - try { - val idSet = Didomi.getInstance().disabledPurposeIds - result.success(idSet.toList()) - } catch (e: DidomiNotReadyException) { - result.error("getDisabledPurposeIds", e.message.orEmpty(), e) - } - } - - /** - * Get the IDs of the disabled vendors - */ - private fun getDisabledVendorIds(result: Result) { - try { - val idSet = Didomi.getInstance().disabledVendorIds - result.success(idSet.toList()) - } catch (e: DidomiNotReadyException) { - result.error("getDisabledVendorIds", e.message.orEmpty(), e) - } - } - - /** - * Get the IDs of the enabled purposes - */ - private fun getEnabledPurposeIds(result: Result) { - try { - val idSet = Didomi.getInstance().enabledPurposeIds - result.success(idSet.toList()) - } catch (e: DidomiNotReadyException) { - result.error("getEnabledPurposeIds", e.message.orEmpty(), e) - } - } - - /** - * Get the IDs of the enabled vendors - */ - private fun getEnabledVendorIds(result: Result) { - try { - val idSet = Didomi.getInstance().enabledVendorIds - result.success(idSet.toList()) - } catch (e: DidomiNotReadyException) { - result.error("getEnabledVendorIds", e.message.orEmpty(), e) - } - } - /** * Get the IDs of the required purposes */ @@ -447,58 +369,6 @@ class DidomiPlugin : FlutterPlugin, MethodCallHandler, ActivityAware { } } - /** - * Get disabled purposes - */ - private fun getDisabledPurposes(result: Result) { - try { - val purposes = Didomi.getInstance().disabledPurposes - val list = EntitiesHelper.toList(purposes) - result.success(list) - } catch (e: Exception) { - result.error("getRequiredPurposes", e.message.orEmpty(), e) - } - } - - /** - * Get disabled vendors - */ - private fun getDisabledVendors(result: Result) { - try { - val vendors = Didomi.getInstance().disabledVendors - val list = EntitiesHelper.toList(vendors) - result.success(list) - } catch (e: Exception) { - result.error("getDisabledVendors", e.message.orEmpty(), e) - } - } - - /** - * Get enabled purposes - */ - private fun getEnabledPurposes(result: Result) { - try { - val purposes = Didomi.getInstance().enabledPurposes - val list = EntitiesHelper.toList(purposes) - result.success(list) - } catch (e: Exception) { - result.error("getEnabledPurposes", e.message.orEmpty(), e) - } - } - - /** - * Get enabled vendors - */ - private fun getEnabledVendors(result: Result) { - try { - val vendors = Didomi.getInstance().enabledVendors - val list = EntitiesHelper.toList(vendors) - result.success(list) - } catch (e: Exception) { - result.error("getEnabledVendors", e.message.orEmpty(), e) - } - } - /** * Get required purposes */ @@ -597,179 +467,6 @@ class DidomiPlugin : FlutterPlugin, MethodCallHandler, ActivityAware { } } - /** - * Get the user consent status for a specific purpose - * @param purposeId - * @return The user consent status for the specified purpose - */ - private fun getUserConsentStatusForPurpose(call: MethodCall, result: Result) { - val purposeId = call.argument("purposeId") as? String - if (purposeId.isNullOrBlank()) { - result.error("getUserConsentStatusForPurpose", "purposeId is null or blank", null) - return - } - try { - val status = Didomi.getInstance().getUserConsentStatusForPurpose(purposeId) - result.success( - when (status) { - false -> 0 - true -> 1 - else -> 2 - } - ) - } catch (e: DidomiNotReadyException) { - result.error("getUserConsentStatusForPurpose", e.message.orEmpty(), e) - } - } - - /** - * Get the user consent status for a specific vendor - * @param vendorId - * @return The user consent status for the specified vendor - */ - private fun getUserConsentStatusForVendor(call: MethodCall, result: Result) { - val vendorId = call.argument("vendorId") as? String - if (vendorId.isNullOrBlank()) { - result.error("getUserConsentStatusForVendor", "vendorId is null or blank", null) - return - } - try { - val status = Didomi.getInstance().getUserConsentStatusForVendor(vendorId) - result.success( - when (status) { - false -> 0 - true -> 1 - else -> 2 - } - ) - } catch (e: DidomiNotReadyException) { - result.error("getUserConsentStatusForVendor", e.message.orEmpty(), e) - } - } - - /** - * Check if a vendor has consent for all the purposes that it requires - * @param vendorId - * @return The user consent status for all the purposes that it requires for the specified vendor - */ - private fun getUserConsentStatusForVendorAndRequiredPurposes(call: MethodCall, result: Result) { - val vendorId = call.argument("vendorId") as? String - if (vendorId.isNullOrBlank()) { - result.error("getUserConsentStatusForVendorAndRequiredPurposes", "vendorId is null or blank", null) - return - } - try { - val status = Didomi.getInstance().getUserConsentStatusForVendorAndRequiredPurposes(vendorId) - result.success( - when (status) { - false -> 0 - true -> 1 - else -> 2 - } - ) - } catch (e: DidomiNotReadyException) { - result.error("getUserConsentStatusForVendorAndRequiredPurposes", e.message.orEmpty(), e) - } - } - - /** - * Get the user legitimate interest status for a specific purpose - * @param purposeId - * @return The user legitimate interest status for the specified purpose - */ - private fun getUserLegitimateInterestStatusForPurpose(call: MethodCall, result: Result) { - val purposeId = call.argument("purposeId") as? String - if (purposeId.isNullOrBlank()) { - result.error("getUserLegitimateInterestStatusForPurpose", "purposeId is null or blank", null) - return - } - try { - val status = Didomi.getInstance().getUserLegitimateInterestStatusForPurpose(purposeId) - result.success( - when (status) { - false -> 0 - true -> 1 - else -> 2 - } - ) - } catch (e: DidomiNotReadyException) { - result.error("getUserLegitimateInterestStatusForPurpose", e.message.orEmpty(), e) - } - } - - /** - * Get the user legitimate interest status for a specific vendor - * @param vendorId - * @return The user legitimate interest status for the specified vendor - */ - private fun getUserLegitimateInterestStatusForVendor(call: MethodCall, result: Result) { - val vendorId = call.argument("vendorId") as? String - if (vendorId.isNullOrBlank()) { - result.error("getUserLegitimateInterestStatusForVendor", "vendorId is null or blank", null) - return - } - try { - val status = Didomi.getInstance().getUserLegitimateInterestStatusForVendor(vendorId) - result.success( - when (status) { - false -> 0 - true -> 1 - else -> 2 - } - ) - } catch (e: DidomiNotReadyException) { - result.error("getUserLegitimateInterestStatusForVendor", e.message.orEmpty(), e) - } - } - - /** - * Check if a vendor has legitimate interest for all the purposes that it requires - * @param vendorId - * @return The user legitimate interest status for all the purposes that it requires for the specified vendor - */ - private fun getUserLegitimateInterestStatusForVendorAndRequiredPurposes(call: MethodCall, result: Result) { - val vendorId = call.argument("vendorId") as? String - if (vendorId.isNullOrBlank()) { - result.error("getUserLegitimateInterestStatusForVendorAndRequiredPurposes", "vendorId is null or blank", null) - return - } - try { - val status = Didomi.getInstance().getUserLegitimateInterestStatusForVendorAndRequiredPurposes(vendorId) - result.success( - when (status) { - false -> 0 - true -> 1 - } - ) - } catch (e: DidomiNotReadyException) { - result.error("getUserLegitimateInterestStatusForVendorAndRequiredPurposes", e.message.orEmpty(), e) - } - } - - /** - * Get the user consent and legitimate interest status for a specific vendor - * @param vendorId - * @return The user consent and legitimate interest status for the specified vendor - */ - private fun getUserStatusForVendor(call: MethodCall, result: Result) { - val vendorId = call.argument("vendorId") as? String - if (vendorId.isNullOrBlank()) { - result.error("getUserStatusForVendor", "vendorId is null or blank", null) - return - } - try { - val status = Didomi.getInstance().getUserStatusForVendor(vendorId) - result.success( - when (status) { - false -> 0 - true -> 1 - } - ) - } catch (e: DidomiNotReadyException) { - result.error("getUserStatusForVendor", e.message.orEmpty(), e) - } - } - /** * Set the user status globally * @return true if user consent status was updated, false otherwise. diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index 17e02796..fd60bd2f 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -1,7 +1,7 @@ PODS: - - Didomi-XCFramework (1.99.0) + - Didomi-XCFramework (2.0.0) - didomi_sdk (1.21.0): - - Didomi-XCFramework (= 1.99.0) + - Didomi-XCFramework (= 2.0.0) - Flutter - Flutter (1.0.0) - integration_test (0.0.1): diff --git a/example/lib/testapps/sample_for_purpose_tests.dart b/example/lib/testapps/sample_for_purpose_tests.dart index 2913acae..b47595ec 100644 --- a/example/lib/testapps/sample_for_purpose_tests.dart +++ b/example/lib/testapps/sample_for_purpose_tests.dart @@ -1,9 +1,5 @@ -import 'package:didomi_sdk_example/widgets/get_disabled_purpose_ids.dart'; -import 'package:didomi_sdk_example/widgets/get_enabled_purpose_ids.dart'; import 'package:didomi_sdk_example/widgets/get_purpose.dart'; import 'package:didomi_sdk_example/widgets/get_required_purpose_ids.dart'; -import 'package:didomi_sdk_example/widgets/get_disabled_purposes.dart'; -import 'package:didomi_sdk_example/widgets/get_enabled_purposes.dart'; import 'package:didomi_sdk_example/widgets/get_required_purposes.dart'; import 'package:didomi_sdk_example/widgets/initialize_small.dart'; import 'package:didomi_sdk_example/widgets/set_user_agree_to_all.dart'; @@ -31,11 +27,7 @@ class HomePage extends StatelessWidget { SetUserAgreeToAll(), SetUserDisagreeToAll(), // Purposes - GetDisabledPurposeIds(), - GetEnabledPurposeIds(), GetRequiredPurposeIds(), - GetDisabledPurposes(), - GetEnabledPurposes(), GetRequiredPurposes(), GetPurpose() ], diff --git a/example/lib/testapps/sample_for_vendor_tests.dart b/example/lib/testapps/sample_for_vendor_tests.dart index f38ceacc..9d85a367 100644 --- a/example/lib/testapps/sample_for_vendor_tests.dart +++ b/example/lib/testapps/sample_for_vendor_tests.dart @@ -1,7 +1,3 @@ -import 'package:didomi_sdk_example/widgets/get_disabled_vendor_ids.dart'; -import 'package:didomi_sdk_example/widgets/get_disabled_vendors.dart'; -import 'package:didomi_sdk_example/widgets/get_enabled_vendor_ids.dart'; -import 'package:didomi_sdk_example/widgets/get_enabled_vendors.dart'; import 'package:didomi_sdk_example/widgets/get_required_vendor_ids.dart'; import 'package:didomi_sdk_example/widgets/get_required_vendors.dart'; import 'package:didomi_sdk_example/widgets/get_vendor.dart'; @@ -31,11 +27,7 @@ class HomePage extends StatelessWidget { SetUserAgreeToAll(), SetUserDisagreeToAll(), // Vendors - GetDisabledVendorIds(), - GetEnabledVendorIds(), GetRequiredVendorIds(), - GetDisabledVendors(), - GetEnabledVendors(), GetRequiredVendors(), GetVendor(), ], diff --git a/example/lib/widgets/get_disabled_purpose_ids.dart b/example/lib/widgets/get_disabled_purpose_ids.dart deleted file mode 100644 index d8457dca..00000000 --- a/example/lib/widgets/get_disabled_purpose_ids.dart +++ /dev/null @@ -1,31 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/extensions/list.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.getDisabledPurposeIds -class GetDisabledPurposeIds extends StatefulWidget { - @override - State createState() => _GetDisabledPurposeIdsState(); -} - -class _GetDisabledPurposeIdsState extends BaseSampleWidgetState { - @override - String getButtonName() => "GetDisabledPurposeIds"; - - @override - String getActionId() => "getDisabledPurposeIds"; - - @override - Future callDidomiPlugin() async { - final List result = await DidomiSdk.disabledPurposeIds; - result.sort(); // Required for UI tests - if (result.isEmpty) { - return "Disabled Purpose list is empty."; - } else { - return "Disabled Purposes: ${result.joinToString()}."; - } - } -} diff --git a/example/lib/widgets/get_disabled_purposes.dart b/example/lib/widgets/get_disabled_purposes.dart deleted file mode 100644 index 0da83a61..00000000 --- a/example/lib/widgets/get_disabled_purposes.dart +++ /dev/null @@ -1,34 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk/entities/purpose.dart'; -import 'package:didomi_sdk_example/extensions/list.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.getDisabledPurposes -class GetDisabledPurposes extends StatefulWidget { - @override - State createState() => _GetDisabledPurposesState(); -} - -class _GetDisabledPurposesState - extends BaseSampleWidgetState { - @override - String getButtonName() => "GetDisabledPurposes"; - - @override - String getActionId() => "getDisabledPurposes"; - - @override - Future callDidomiPlugin() async { - final List result = await DidomiSdk.disabledPurposes; - result.sort(); // Required for UI tests - - if (result.isEmpty) { - return "Disabled Purpose list is empty."; - } else { - return "Disabled Purposes: ${result.joinToString()}."; - } - } -} diff --git a/example/lib/widgets/get_disabled_vendor_ids.dart b/example/lib/widgets/get_disabled_vendor_ids.dart deleted file mode 100644 index 316f7c21..00000000 --- a/example/lib/widgets/get_disabled_vendor_ids.dart +++ /dev/null @@ -1,31 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/extensions/list.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.getDisabledVendorIds -class GetDisabledVendorIds extends StatefulWidget { - @override - State createState() => _GetDisabledVendorIdsState(); -} - -class _GetDisabledVendorIdsState extends BaseSampleWidgetState { - @override - String getButtonName() => "GetDisabledVendorIds"; - - @override - String getActionId() => "getDisabledVendorIds"; - - @override - Future callDidomiPlugin() async { - final List result = await DidomiSdk.disabledVendorIds; - result.sort(); // Required for UI tests - if (result.isEmpty) { - return "Disabled Vendor list is empty."; - } else { - return "Disabled Vendors: ${result.joinToString()}."; - } - } -} diff --git a/example/lib/widgets/get_disabled_vendors.dart b/example/lib/widgets/get_disabled_vendors.dart deleted file mode 100644 index c0e08154..00000000 --- a/example/lib/widgets/get_disabled_vendors.dart +++ /dev/null @@ -1,34 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk/entities/vendor.dart'; -import 'package:didomi_sdk_example/extensions/list.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.getDisabledVendors -class GetDisabledVendors extends StatefulWidget { - @override - State createState() => _GetDisabledVendorsState(); -} - -class _GetDisabledVendorsState - extends BaseSampleWidgetState { - @override - String getButtonName() => "GetDisabledVendors"; - - @override - String getActionId() => "getDisabledVendors"; - - @override - Future callDidomiPlugin() async { - final List result = await DidomiSdk.disabledVendors; - result.sort(); // Required for UI tests - - if (result.isEmpty) { - return "Disabled Vendor list is empty."; - } else { - return "Disabled Vendors: ${result.joinToString()}."; - } - } -} diff --git a/example/lib/widgets/get_enabled_purpose_ids.dart b/example/lib/widgets/get_enabled_purpose_ids.dart deleted file mode 100644 index 87bb5e83..00000000 --- a/example/lib/widgets/get_enabled_purpose_ids.dart +++ /dev/null @@ -1,31 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/extensions/list.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.getEnabledPurposeIds -class GetEnabledPurposeIds extends StatefulWidget { - @override - State createState() => _GetEnabledPurposeIdsState(); -} - -class _GetEnabledPurposeIdsState extends BaseSampleWidgetState { - @override - String getButtonName() => "GetEnabledPurposeIds"; - - @override - String getActionId() => "getEnabledPurposeIds"; - - @override - Future callDidomiPlugin() async { - final List result = await DidomiSdk.enabledPurposeIds; - result.sort(); // Required for UI tests - if (result.isEmpty) { - return "Enabled Purpose list is empty."; - } else { - return "Enabled Purposes: ${result.joinToString()}."; - } - } -} diff --git a/example/lib/widgets/get_enabled_purposes.dart b/example/lib/widgets/get_enabled_purposes.dart deleted file mode 100644 index 1d66a20b..00000000 --- a/example/lib/widgets/get_enabled_purposes.dart +++ /dev/null @@ -1,34 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk/entities/purpose.dart'; -import 'package:didomi_sdk_example/extensions/list.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.getEnabledPurposes -class GetEnabledPurposes extends StatefulWidget { - @override - State createState() => _GetEnabledPurposesState(); -} - -class _GetEnabledPurposesState - extends BaseSampleWidgetState { - @override - String getButtonName() => "GetEnabledPurposes"; - - @override - String getActionId() => "getEnabledPurposes"; - - @override - Future callDidomiPlugin() async { - final List result = await DidomiSdk.enabledPurposes; - result.sort(); // Required for UI tests - - if (result.isEmpty) { - return "Enabled Purpose list is empty."; - } else { - return "Enabled Purposes: ${result.joinToString()}."; - } - } -} diff --git a/example/lib/widgets/get_enabled_vendor_ids.dart b/example/lib/widgets/get_enabled_vendor_ids.dart deleted file mode 100644 index f4793212..00000000 --- a/example/lib/widgets/get_enabled_vendor_ids.dart +++ /dev/null @@ -1,31 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/extensions/list.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.getEnabledVendorIds -class GetEnabledVendorIds extends StatefulWidget { - @override - State createState() => _GetEnabledVendorIdsState(); -} - -class _GetEnabledVendorIdsState extends BaseSampleWidgetState { - @override - String getButtonName() => "GetEnabledVendorIds"; - - @override - String getActionId() => "getEnabledVendorIds"; - - @override - Future callDidomiPlugin() async { - final List result = await DidomiSdk.enabledVendorIds; - result.sort(); // Required for UI tests - if (result.isEmpty) { - return "Enabled Vendor list is empty."; - } else { - return "Enabled Vendors: ${result.joinToString()}."; - } - } -} diff --git a/example/lib/widgets/get_enabled_vendors.dart b/example/lib/widgets/get_enabled_vendors.dart deleted file mode 100644 index 5bf25bef..00000000 --- a/example/lib/widgets/get_enabled_vendors.dart +++ /dev/null @@ -1,34 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk/entities/vendor.dart'; -import 'package:didomi_sdk_example/extensions/list.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.getEnabledVendors -class GetEnabledVendors extends StatefulWidget { - @override - State createState() => _GetEnabledVendorsState(); -} - -class _GetEnabledVendorsState - extends BaseSampleWidgetState { - @override - String getButtonName() => "GetEnabledVendors"; - - @override - String getActionId() => "getEnabledVendors"; - - @override - Future callDidomiPlugin() async { - final List result = await DidomiSdk.enabledVendors; - result.sort(); // Required for UI tests - - if (result.isEmpty) { - return "Enabled Vendor list is empty."; - } else { - return "Enabled Vendors: ${result.joinToString()}."; - } - } -} diff --git a/example/lib/widgets/get_user_consent_status_for_purpose.dart b/example/lib/widgets/get_user_consent_status_for_purpose.dart deleted file mode 100644 index cc349f6b..00000000 --- a/example/lib/widgets/get_user_consent_status_for_purpose.dart +++ /dev/null @@ -1,33 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/consent_status.dart'; -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.GetUserConsentStatusForPurpose -class GetUserConsentStatusForPurpose extends StatefulWidget { - @override - State createState() => _GetUserConsentStatusForPurposeState(); -} - -class _GetUserConsentStatusForPurposeState extends BaseSampleWidgetState { - // Purpose id for sample - final String purposeId = "cookies"; - - @override - String getButtonName() => "GetUserConsentStatusForPurpose\n$purposeId"; - - @override - String getActionId() => "getUserConsentStatusForPurpose"; - - @override - Future callDidomiPlugin() async { - final ConsentStatus result = await DidomiSdk.getUserConsentStatusForPurpose(purposeId); - if (result.isUnknown) { - return "No user status for purpose '$purposeId'."; - } else { - return "User status is '${result.string}' for purpose '$purposeId'."; - } - } -} diff --git a/example/lib/widgets/get_user_consent_status_for_vendor.dart b/example/lib/widgets/get_user_consent_status_for_vendor.dart deleted file mode 100644 index 9d467075..00000000 --- a/example/lib/widgets/get_user_consent_status_for_vendor.dart +++ /dev/null @@ -1,33 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/consent_status.dart'; -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.GetUserConsentStatusForVendor -class GetUserConsentStatusForVendor extends StatefulWidget { - @override - State createState() => _GetUserConsentStatusForVendorState(); -} - -class _GetUserConsentStatusForVendorState extends BaseSampleWidgetState { - // Vendor id for sample - final String vendorId = "1111"; // 152 Media LLC - - @override - String getButtonName() => "GetUserConsentStatusForVendor\n$vendorId"; - - @override - String getActionId() => "getUserConsentStatusForVendor"; - - @override - Future callDidomiPlugin() async { - final ConsentStatus result = await DidomiSdk.getUserConsentStatusForVendor(vendorId); - if (result.isUnknown) { - return "No user status for vendor '$vendorId'."; - } else { - return "User status is '${result.string}' for vendor '$vendorId'."; - } - } -} diff --git a/example/lib/widgets/get_user_consent_status_for_vendor_and_required_purposes.dart b/example/lib/widgets/get_user_consent_status_for_vendor_and_required_purposes.dart deleted file mode 100644 index f2fbe758..00000000 --- a/example/lib/widgets/get_user_consent_status_for_vendor_and_required_purposes.dart +++ /dev/null @@ -1,33 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/consent_status.dart'; -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.getUserConsentStatusForVendorAndRequiredPurposes -class GetUserConsentStatusForVendorAndRequiredPurposes extends StatefulWidget { - @override - State createState() => _GetUserConsentStatusForVendorAndRequiredPurposesState(); -} - -class _GetUserConsentStatusForVendorAndRequiredPurposesState extends BaseSampleWidgetState { - // Vendor id for sample - final String vendorId = "1111"; // 152 Media LLC - - @override - String getButtonName() => "getUserConsentStatusForVendorAndRequiredPurposes\n$vendorId"; - - @override - String getActionId() => "getUserConsentStatusForVendorAndRequiredPurposes"; - - @override - Future callDidomiPlugin() async { - final ConsentStatus result = await DidomiSdk.getUserConsentStatusForVendorAndRequiredPurposes(vendorId); - if (result.isUnknown) { - return "No user status for vendor '$vendorId'."; - } else { - return "User status is '${result.string}' for vendor '$vendorId' and required purposes."; - } - } -} diff --git a/example/lib/widgets/get_user_legitimate_interest_status_for_purpose.dart b/example/lib/widgets/get_user_legitimate_interest_status_for_purpose.dart deleted file mode 100644 index e7733326..00000000 --- a/example/lib/widgets/get_user_legitimate_interest_status_for_purpose.dart +++ /dev/null @@ -1,33 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/consent_status.dart'; -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.GetUserLegitimateInterestStatusForPurpose -class GetUserLegitimateInterestStatusForPurpose extends StatefulWidget { - @override - State createState() => _GetUserLegitimateInterestStatusForPurposeState(); -} - -class _GetUserLegitimateInterestStatusForPurposeState extends BaseSampleWidgetState { - // Purpose id for sample - final String purposeId = "cookies"; - - @override - String getButtonName() => "GetUserLegitimateInterestStatusForPurpose\n$purposeId"; - - @override - String getActionId() => "getUserLegitimateInterestStatusForPurpose"; - - @override - Future callDidomiPlugin() async { - final ConsentStatus result = await DidomiSdk.getUserLegitimateInterestStatusForPurpose(purposeId); - if (result.isUnknown) { - return "No user status for purpose '$purposeId'."; - } else { - return "User status is '${result.string}' for purpose '$purposeId'."; - } - } -} diff --git a/example/lib/widgets/get_user_legitimate_interest_status_for_vendor.dart b/example/lib/widgets/get_user_legitimate_interest_status_for_vendor.dart deleted file mode 100644 index 927bfc5e..00000000 --- a/example/lib/widgets/get_user_legitimate_interest_status_for_vendor.dart +++ /dev/null @@ -1,33 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/consent_status.dart'; -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.GetUserLegitimateInterestStatusForVendor -class GetUserLegitimateInterestStatusForVendor extends StatefulWidget { - @override - State createState() => _GetUserLegitimateInterestStatusForVendorState(); -} - -class _GetUserLegitimateInterestStatusForVendorState extends BaseSampleWidgetState { - // Vendor id for sample - final String vendorId = "1111"; // 152 Media LLC - - @override - String getButtonName() => "GetUserLegitimateInterestStatusForVendor\n$vendorId"; - - @override - String getActionId() => "getUserLegitimateInterestStatusForVendor"; - - @override - Future callDidomiPlugin() async { - final ConsentStatus result = await DidomiSdk.getUserLegitimateInterestStatusForVendor(vendorId); - if (result.isUnknown) { - return "No user status for vendor '$vendorId'."; - } else { - return "User status is '${result.string}' for vendor '$vendorId'."; - } - } -} diff --git a/example/lib/widgets/get_user_legitimate_interest_status_for_vendor_and_required_purposes.dart b/example/lib/widgets/get_user_legitimate_interest_status_for_vendor_and_required_purposes.dart deleted file mode 100644 index 89c5544a..00000000 --- a/example/lib/widgets/get_user_legitimate_interest_status_for_vendor_and_required_purposes.dart +++ /dev/null @@ -1,33 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/consent_status.dart'; -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.getUserLegitimateInterestStatusForVendorAndRequiredPurposes -class GetUserLegitimateInterestStatusForVendorAndRequiredPurposes extends StatefulWidget { - @override - State createState() => _GetUserLegitimateInterestStatusForVendorAndRequiredPurposesState(); -} - -class _GetUserLegitimateInterestStatusForVendorAndRequiredPurposesState extends BaseSampleWidgetState { - // Vendor id for sample - final String vendorId = "1111"; // 152 Media LLC - - @override - String getButtonName() => "getUserLegitimateInterestStatusForVendorAndRequiredPurposes\n$vendorId"; - - @override - String getActionId() => "getUserLegitimateInterestStatusForVendorAndRequiredPurposes"; - - @override - Future callDidomiPlugin() async { - final ConsentStatus result = await DidomiSdk.getUserLegitimateInterestStatusForVendorAndRequiredPurposes(vendorId); - if (result.isUnknown) { - return "No user status for vendor '$vendorId'."; - } else { - return "User status is '${result.string}' for vendor '$vendorId' and required purposes."; - } - } -} diff --git a/example/lib/widgets/get_user_status_for_vendor.dart b/example/lib/widgets/get_user_status_for_vendor.dart deleted file mode 100644 index 60be747f..00000000 --- a/example/lib/widgets/get_user_status_for_vendor.dart +++ /dev/null @@ -1,33 +0,0 @@ -import 'dart:async'; - -import 'package:didomi_sdk/consent_status.dart'; -import 'package:didomi_sdk/didomi_sdk.dart'; -import 'package:didomi_sdk_example/widgets/base_sample_widget_state.dart'; -import 'package:flutter/material.dart'; - -/// Widget to call DidomiSdk.GetUserStatusForVendor -class GetUserStatusForVendor extends StatefulWidget { - @override - State createState() => _GetUserStatusForVendorState(); -} - -class _GetUserStatusForVendorState extends BaseSampleWidgetState { - // Vendor id for sample - final String vendorId = "1111"; // 152 Media LLC - - @override - String getButtonName() => "GetUserStatusForVendor\n$vendorId"; - - @override - String getActionId() => "getUserStatusForVendor"; - - @override - Future callDidomiPlugin() async { - final ConsentStatus result = await DidomiSdk.getUserStatusForVendor(vendorId); - if (result.isUnknown) { - return "No user status for vendor '$vendorId'."; - } else { - return "User status is '${result.string}' for vendor '$vendorId'."; - } - } -} diff --git a/example/lib/widgets/set_user.dart b/example/lib/widgets/set_user.dart index 1c9fde53..86b09ae9 100644 --- a/example/lib/widgets/set_user.dart +++ b/example/lib/widgets/set_user.dart @@ -43,9 +43,6 @@ class _SetUserState extends BaseSampleWidgetState { await DidomiSdk.setUser(userId); } break; - case AuthType.deprecatedAuth: - await DidomiSdk.setUserWithAuthentication(userId, "hash-md5", secretId, salt, "test-digest"); - break; case AuthType.withHash: if (setUserAndSetupUI) { await DidomiSdk.setUserWithAuthParamsAndSetupUI(new UserAuthWithHashParams(userId, "hash-md5", secretId, "test-digest", salt, expiration)); @@ -111,19 +108,6 @@ class _SetUserState extends BaseSampleWidgetState { } }, ), - RadioListTile( - key: Key("setUserWithAuthDeprecated"), - title: const Text("Deprecated authentication"), - value: AuthType.deprecatedAuth, - groupValue: _authenticationType, - onChanged: (AuthType? value) { - if (value != null) { - setState(() { - _authenticationType = value; - }); - } - }, - ), RadioListTile( key: Key("setUserAuthWithHash"), title: const Text("Authentication with hash"), @@ -207,4 +191,4 @@ class _SetUserState extends BaseSampleWidgetState { } } -enum AuthType { invalid, userId, deprecatedAuth, withHash, withEncryption, clearUser } +enum AuthType { invalid, userId, withHash, withEncryption, clearUser } diff --git a/ios/Classes/SwiftDidomiSdkPlugin.swift b/ios/Classes/SwiftDidomiSdkPlugin.swift index ad43c8d7..c0b66819 100644 --- a/ios/Classes/SwiftDidomiSdkPlugin.swift +++ b/ios/Classes/SwiftDidomiSdkPlugin.swift @@ -88,26 +88,10 @@ public class SwiftDidomiSdkPlugin: NSObject, FlutterPlugin { setCurrentUserStatus(call, result: result) case "getUserStatus": getUserStatus(result: result) - case "getDisabledPurposeIds": - getDisabledPurposeIds(result: result) - case "getDisabledVendorIds": - getDisabledVendorIds(result: result) - case "getEnabledPurposeIds": - getEnabledPurposeIds(result: result) - case "getEnabledVendorIds": - getEnabledVendorIds(result: result) case "getRequiredPurposeIds": getRequiredPurposeIds(result: result) case "getRequiredVendorIds": getRequiredVendorIds(result: result) - case "getEnabledPurposes": - getEnabledPurposes(result: result) - case "getDisabledPurposes": - getDisabledPurposes(result: result) - case "getEnabledVendors": - getEnabledVendors(result: result) - case "getDisabledVendors": - getDisabledVendors(result: result) case "getRequiredPurposes": getRequiredPurposes(result: result) case "getRequiredVendors": @@ -122,20 +106,6 @@ public class SwiftDidomiSdkPlugin: NSObject, FlutterPlugin { setUserAgreeToAll(result: result) case "setUserDisagreeToAll": setUserDisagreeToAll(result: result) - case "getUserConsentStatusForPurpose": - getUserConsentStatusForPurpose(call, result: result) - case "getUserConsentStatusForVendor": - getUserConsentStatusForVendor(call, result: result) - case "getUserConsentStatusForVendorAndRequiredPurposes": - getUserConsentStatusForVendorAndRequiredPurposes(call, result: result) - case "getUserLegitimateInterestStatusForPurpose": - getUserLegitimateInterestStatusForPurpose(call, result: result) - case "getUserLegitimateInterestStatusForVendor": - getUserLegitimateInterestStatusForVendor(call, result: result) - case "getUserLegitimateInterestStatusForVendorAndRequiredPurposes": - getUserLegitimateInterestStatusForVendorAndRequiredPurposes(call, result: result) - case "getUserStatusForVendor": - getUserStatusForVendor(call, result: result) case "setUserStatus": setUserStatus(call, result: result) case "setUserStatusGlobally": @@ -448,58 +418,6 @@ public class SwiftDidomiSdkPlugin: NSObject, FlutterPlugin { result(encoded) } - /** - * Get the disabled purpose IDs - - Returns: Array of purpose ids - */ - func getDisabledPurposeIds(result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - let purposeIdList = Array(Didomi.shared.getDisabledPurposeIds()) - result(purposeIdList) - } - - /** - * Get the disabled vendor IDs - - Returns: Array of vendor ids - */ - func getDisabledVendorIds(result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - let vendorIdList = Array(Didomi.shared.getDisabledVendorIds()) - result(vendorIdList) - } - - /** - * Get the enabled purpose IDs - - Returns: Array of purpose ids - */ - func getEnabledPurposeIds(result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - let purposeIdList = Array(Didomi.shared.getEnabledPurposeIds()) - result(purposeIdList) - } - - /** - * Get the enabled vendor IDs - - Returns: Array of vendor ids - */ - func getEnabledVendorIds(result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - let vendorIdList = Array(Didomi.shared.getEnabledVendorIds()) - result(vendorIdList) - } - /** * Get the required purpose IDs - Returns: Array of purpose ids @@ -526,50 +444,6 @@ public class SwiftDidomiSdkPlugin: NSObject, FlutterPlugin { result(vendorIdList) } - // Get enabled purposes from native to flutter. - func getEnabledPurposes(result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - let purposes = Didomi.shared.getEnabledPurposes() - let encoded = EntitiesHelper.dictionaries(from: purposes) - result(encoded) - } - - // Get disabled purposes from native to flutter. - func getDisabledPurposes(result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - let purposes = Didomi.shared.getDisabledPurposes() - let encoded = EntitiesHelper.dictionaries(from: purposes) - result(encoded) - } - - // Get enabled vendors from native to flutter. - func getEnabledVendors(result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - let vendors = Didomi.shared.getEnabledVendors() - let encoded = EntitiesHelper.dictionaries(from: vendors) - result(encoded) - } - - // Get disabled vendors from native to flutter. - func getDisabledVendors(result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - let vendors = Didomi.shared.getDisabledVendors() - let encoded = EntitiesHelper.dictionaries(from: vendors) - result(encoded) - } - // Get required purposes from native to flutter. func getRequiredPurposes(result: @escaping FlutterResult) { if !Didomi.shared.isReady() { @@ -681,230 +555,6 @@ public class SwiftDidomiSdkPlugin: NSObject, FlutterPlugin { result(Didomi.shared.setUserDisagreeToAll()) } - /** - Get the user consent status for a specific purpose - - Parameter purposeId: The purpose ID to check consent for - - Returns: The user consent status for the specified purpose - */ - func getUserConsentStatusForPurpose(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - guard let args = call.arguments as? Dictionary else { - result(FlutterError.init(code: "invalid_args", message: "Wrong arguments for getUserConsentStatusForPurpose", details: nil)) - return - } - - let purposeId = args["purposeId"] ?? "" - if purposeId.isEmpty { - result(FlutterError.init(code: "invalid_args", message: "Missing purposeId argument for getUserConsentStatusForPurpose", details: nil)) - return - } - - let consentStatusForPurpose = Didomi.shared.getUserConsentStatusForPurpose(purposeId: purposeId) - switch consentStatusForPurpose { - case .disable: - result(0) - case .enable: - result(1) - default: - result(2) - } - } - - /** - Get the user consent status for a specific vendor - - Parameter vendorId: The vendor ID to check consent for - - Returns: The user consent status for the specified vendor - */ - func getUserConsentStatusForVendor(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - guard let args = call.arguments as? Dictionary else { - result(FlutterError.init(code: "invalid_args", message: "Wrong arguments for getUserStatusForVendor", details: nil)) - return - } - - let vendorId = args["vendorId"] ?? "" - if vendorId.isEmpty { - result(FlutterError.init(code: "invalid_args", message: "Missing vendorId argument for getUserStatusForVendor", details: nil)) - return - } - - let consentStatusForVendor = Didomi.shared.getUserConsentStatusForVendor(vendorId: vendorId) - switch consentStatusForVendor { - case .disable: - result(0) - case .enable: - result(1) - default: - result(2) - } - } - - /** - Get the user consent status for a specific vendor and all its purposes - - Parameter vendorId: The ID of the vendor - - Returns: The user consent status corresponding to the specified vendor and all its required purposes - */ - func getUserConsentStatusForVendorAndRequiredPurposes(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - guard let args = call.arguments as? Dictionary else { - result(FlutterError.init(code: "invalid_args", message: "Wrong arguments for getUserConsentStatusForVendorAndRequiredPurposes", details: nil)) - return - } - - let vendorId = args["vendorId"] ?? "" - if vendorId.isEmpty { - result(FlutterError.init(code: "invalid_args", message: "Missing vendorId argument for getUserConsentStatusForVendorAndRequiredPurposes", details: nil)) - return - } - - let consentStatusForVendor = Didomi.shared.getUserConsentStatusForVendorAndRequiredPurposes(vendorId: vendorId) - switch consentStatusForVendor { - case .disable: - result(0) - case .enable: - result(1) - default: - result(2) - } - } - - /** - Get the user legitimate interest status for a specific purpose - - Parameter purposeId: The purpose ID to check consent for - - Returns: The user legitimate interest status for the specified purpose - */ - func getUserLegitimateInterestStatusForPurpose(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - guard let args = call.arguments as? Dictionary else { - result(FlutterError.init(code: "invalid_args", message: "Wrong arguments for getUserLegitimateInterestStatusForPurpose", details: nil)) - return - } - - let purposeId = args["purposeId"] ?? "" - if purposeId.isEmpty { - result(FlutterError.init(code: "invalid_args", message: "Missing purposeId argument for getUserLegitimateInterestStatusForPurpose", details: nil)) - return - } - - let legitimateInterestStatusForPurpose = Didomi.shared.getUserLegitimateInterestStatusForPurpose(purposeId: purposeId) - switch legitimateInterestStatusForPurpose { - case .disable: - result(0) - case .enable: - result(1) - default: - result(2) - } - } - - /** - Get the user legitimate interest status for a specific vendor - - Parameter vendorId: The vendor ID to check consent for - - Returns: The user consent status for the specified vendor - */ - func getUserLegitimateInterestStatusForVendor(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - guard let args = call.arguments as? Dictionary else { - result(FlutterError.init(code: "invalid_args", message: "Wrong arguments for getUserLegitimateInterestStatusForVendor", details: nil)) - return - } - - let vendorId = args["vendorId"] ?? "" - if vendorId.isEmpty { - result(FlutterError.init(code: "invalid_args", message: "Missing vendorId argument for getUserLegitimateInterestStatusForVendor", details: nil)) - return - } - - let legitimateInterestStatusForVendor = Didomi.shared.getUserLegitimateInterestStatusForVendor(vendorId: vendorId) - switch legitimateInterestStatusForVendor { - case .disable: - result(0) - case .enable: - result(1) - default: - result(2) - } - } - - /** - Get the user status (consent and legitimate interest) for a specific vendor - - Parameter vendorId: The vendor ID to check consent for - - Returns: The user status for the specified vendor - */ - func getUserStatusForVendor(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - guard let args = call.arguments as? Dictionary else { - result(FlutterError.init(code: "invalid_args", message: "Wrong arguments for getUserStatusForVendor", details: nil)) - return - } - - let vendorId = args["vendorId"] ?? "" - if vendorId.isEmpty { - result(FlutterError.init(code: "invalid_args", message: "Missing vendorId argument for getUserStatusForVendor", details: nil)) - return - } - - let statusForVendor = Didomi.shared.getUserStatusForVendor(vendorId: vendorId) - switch statusForVendor { - case .disable: - result(0) - case .enable: - result(1) - default: - result(2) - } - } - - /** - Get the user legitimate interest status for a specific vendor and all its purposes - - Parameter vendorId: The ID of the vendor - - Returns: The user legitimate interest status corresponding to the specified vendor and all its required purposes - */ - func getUserLegitimateInterestStatusForVendorAndRequiredPurposes(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - if !Didomi.shared.isReady() { - result(FlutterError.init(code: "sdk_not_ready", message: SwiftDidomiSdkPlugin.didomiNotReadyException, details: nil)) - return - } - guard let args = call.arguments as? Dictionary else { - result(FlutterError.init(code: "invalid_args", message: "Wrong arguments for getUserLegitimateInterestStatusForVendorAndRequiredPurposes", details: nil)) - return - } - - let vendorId = args["vendorId"] ?? "" - if vendorId.isEmpty { - result(FlutterError.init(code: "invalid_args", message: "Missing vendorId argument for getUserLegitimateInterestStatusForVendorAndRequiredPurposes", details: nil)) - return - } - - let legitimateInterestStatusForVendor = Didomi.shared.getUserLegitimateInterestStatusForVendorAndRequiredPurposes(vendorId: vendorId) - switch legitimateInterestStatusForVendor { - case .disable: - result(0) - case .enable: - result(1) - default: - result(2) - } - } - /** Set the user status for purposes and vendors for consent and legitimate interest. - Parameters enabledConsentPurposeIds: List of enabled consent purposes to set. diff --git a/ios/didomi_sdk.podspec b/ios/didomi_sdk.podspec index d0451ede..d160a922 100644 --- a/ios/didomi_sdk.podspec +++ b/ios/didomi_sdk.podspec @@ -12,7 +12,7 @@ Pod::Spec.new do |s| s.source = { :path => 'git@github.com:didomi/flutter.git', :tag => '1.21.0' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'Didomi-XCFramework', '1.99.0' + s.dependency 'Didomi-XCFramework', '2.0.0' s.platform = :ios, '9.0' # Flutter.framework does not contain a i386 slice. diff --git a/lib/didomi_sdk.dart b/lib/didomi_sdk.dart index b94cb7b1..5edbe7ba 100644 --- a/lib/didomi_sdk.dart +++ b/lib/didomi_sdk.dart @@ -204,38 +204,6 @@ class DidomiSdk { return UserStatus.fromJson(result); } - /// Get the IDs of the disabled purposes - @Deprecated("Use userStatus instead. " - "Search for the purposeId in userStatus.purposes.global.disabled or userStatus.purposes.consent.disabled") - static Future> get disabledPurposeIds async { - final List result = await _channel.invokeMethod('getDisabledPurposeIds'); - return result.cast(); - } - - /// Get the IDs of the disabled vendors - @Deprecated("Use userStatus instead. " - "The result of this method has been replaced by userStatus.vendors.consent.disabled.") - static Future> get disabledVendorIds async { - final List result = await _channel.invokeMethod('getDisabledVendorIds'); - return result.cast(); - } - - /// Get the IDs of the enabled purposes - @Deprecated("Use userStatus instead. " - "Search for the purposeId in userStatus.purposes.global.enabled or userStatus.purposes.consent.disabled") - static Future> get enabledPurposeIds async { - final List result = await _channel.invokeMethod('getEnabledPurposeIds'); - return result.cast(); - } - - /// Get the IDs of the enabled vendors - @Deprecated("Use userStatus instead. " - "The result of this method has been replaced by userStatus.vendors.consent.enabled") - static Future> get enabledVendorIds async { - final List result = await _channel.invokeMethod('getEnabledVendorIds'); - return result.cast(); - } - /// Get the IDs of the required purposes static Future> get requiredPurposeIds async { final List result = await _channel.invokeMethod('getRequiredPurposeIds'); @@ -248,38 +216,6 @@ class DidomiSdk { return result.cast(); } - /// Get enabled purposes. - @Deprecated("Use userStatus instead. " - "The result of this method has been replaced by userStatus.purposes.global.enabled") - static Future> get enabledPurposes async { - final List result = await _channel.invokeMethod("getEnabledPurposes"); - return EntitiesHelper.toPurposes(result); - } - - /// Get disabled purposes. - @Deprecated("Use userStatus instead. " - "The result of this method has been replaced by userStatus.purposes.global.disabled") - static Future> get disabledPurposes async { - final List result = await _channel.invokeMethod("getDisabledPurposes"); - return EntitiesHelper.toPurposes(result); - } - - /// Get enabled vendors. - @Deprecated("Use userStatus instead. " - "The result of this method has been replaced by userStatus.vendors.consent.enabled") - static Future> get enabledVendors async { - final List result = await _channel.invokeMethod("getEnabledVendors"); - return EntitiesHelper.toVendors(result); - } - - /// Get disabled vendors. - @Deprecated("Use userStatus instead. " - "The result of this method has been replaced by userStatus.vendors.consent.disabled") - static Future> get disabledVendors async { - final List result = await _channel.invokeMethod("getDisabledVendors"); - return EntitiesHelper.toVendors(result); - } - /// Get required purposes. static Future> get requiredPurposes async { final List result = await _channel.invokeMethod("getRequiredPurposes"); @@ -323,65 +259,6 @@ class DidomiSdk { return result; } - /// Get the user consent status for a specific purpose - @Deprecated("Use userStatus instead. " - "Search for the purposeId in userStatus.purposes.global.enabled or userStatus.purposes.consent.disabled") - static Future getUserConsentStatusForPurpose(String purposeId) async { - final int result = await _channel.invokeMethod("getUserConsentStatusForPurpose", {"purposeId": purposeId}); - return ConsentStatus.values[result]; - } - - /// Get the user consent status for a specific vendor - @Deprecated("Use userStatus instead. " - "Search for the vendorId in userStatus.vendors.global.enabled or userStatus.vendors.global.disabled") - static Future getUserConsentStatusForVendor(String vendorId) async { - final int result = await _channel.invokeMethod("getUserConsentStatusForVendor", {"vendorId": vendorId}); - return ConsentStatus.values[result]; - } - - /// Get the user consent status for a specific vendor and all its purposes - @Deprecated("Use userStatus instead. " - "Search for the vendorId in userStatus.vendors.globalConsent.enabled or userStatus.vendors.globalConsent.disabled") - static Future getUserConsentStatusForVendorAndRequiredPurposes(String vendorId) async { - final int result = - await _channel.invokeMethod("getUserConsentStatusForVendorAndRequiredPurposes", {"vendorId": vendorId}); - return ConsentStatus.values[result]; - } - - /// Get the user legitimate interest status for a specific purpose - @Deprecated("Use userStatus instead. " - "Search for the purposeId in userStatus.purposes.global.enabled or userStatus.purposes.legitimateInterest.disabled") - static Future getUserLegitimateInterestStatusForPurpose(String purposeId) async { - final int result = - await _channel.invokeMethod("getUserLegitimateInterestStatusForPurpose", {"purposeId": purposeId}); - return ConsentStatus.values[result]; - } - - /// Get the user legitimate interest status for a specific vendor - @Deprecated("Use userStatus instead. " - "Search for the vendorId in userStatus.vendors.global.enabled or userStatus.vendors.global.disabled") - static Future getUserLegitimateInterestStatusForVendor(String vendorId) async { - final int result = await _channel.invokeMethod("getUserLegitimateInterestStatusForVendor", {"vendorId": vendorId}); - return ConsentStatus.values[result]; - } - - /// Get the user legitimate interest status for a specific vendor and all its purposes - @Deprecated("Use userStatus instead. " - "Search for the vendorId in userStatus.vendors.globalLegitimateInterest.enabled or userStatus.vendors.globalLegitimateInterest.disabled") - static Future getUserLegitimateInterestStatusForVendorAndRequiredPurposes(String vendorId) async { - final int result = await _channel - .invokeMethod("getUserLegitimateInterestStatusForVendorAndRequiredPurposes", {"vendorId": vendorId}); - return ConsentStatus.values[result]; - } - - /// Get the user consent and legitimate interest status for a specific vendor - @Deprecated("Use userStatus instead. " - "Search for the vendorId in userStatus.vendors.global.enabled or userStatus.vendors.global.disabled") - static Future getUserStatusForVendor(String vendorId) async { - final int result = await _channel.invokeMethod("getUserStatusForVendor", {"vendorId": vendorId}); - return ConsentStatus.values[result]; - } - /// Set the user status globally static Future setUserStatusGlobally( bool purposesConsentStatus, bool purposesLIStatus, bool vendorsConsentStatus, bool vendorsLIStatus) async => @@ -467,15 +344,4 @@ class DidomiSdk { }); } } - - /// Set user information with authentication - @Deprecated("Use setUserWithAuthParams(UserAuthParams) instead.") - static Future setUserWithAuthentication( - String organizationUserId, - String organizationUserIdAuthAlgorithm, - String organizationUserIdAuthSid, - String? organizationUserIdAuthSalt, - String organizationUserIdAuthDigest) async => - await setUserWithAuthParams(new UserAuthWithHashParams(organizationUserId, organizationUserIdAuthAlgorithm, - organizationUserIdAuthSid, organizationUserIdAuthDigest, organizationUserIdAuthSalt)); }