Skip to content

Commit

Permalink
feat: add modal
Browse files Browse the repository at this point in the history
  • Loading branch information
merlinpaypal committed Jul 19, 2024
1 parent 7ad763b commit f530024
Show file tree
Hide file tree
Showing 6 changed files with 433 additions and 11 deletions.
36 changes: 36 additions & 0 deletions demo/src/main/java/com/paypal/messagesdemo/XmlActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,12 @@ import android.util.Log
import android.view.View
import android.view.ViewGroup.LayoutParams
import android.widget.EditText
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.compose.ui.graphics.Color
import com.paypal.messages.PayPalMessageView
import com.paypal.messages.PayPalMessagesModalView
import com.paypal.messages.config.PayPalEnvironment
import com.paypal.messages.config.PayPalMessageOfferType
import com.paypal.messages.config.PayPalMessagePageType
Expand All @@ -18,6 +20,7 @@ import com.paypal.messages.config.message.PayPalMessageViewStateCallbacks
import com.paypal.messages.config.message.style.PayPalMessageAlignment
import com.paypal.messages.config.message.style.PayPalMessageColor
import com.paypal.messages.config.message.style.PayPalMessageLogoType
import com.paypal.messages.config.modal.PayPalMessagesModalConfig
import com.paypal.messages.io.Api
import com.paypal.messagesdemo.databinding.ActivityMessageBinding

Expand All @@ -35,6 +38,17 @@ class XmlActivity : AppCompatActivity() {
binding = ActivityMessageBinding.inflate(layoutInflater)
setContentView(binding.root)

val modalConfig = PayPalMessagesModalConfig(
clientID = getString(R.string.client_id),
amount = 300.0,
offerType = PayPalMessageOfferType.PAY_LATER_LONG_TERM,
)
val modal = PayPalMessagesModalView(context = this, config = modalConfig)
val messagesModalText = binding.messagesModalText
messagesModalText.setOnClickListener {
modal.show()
}

val messageWrapper = binding.messageWrapper
val progressBar = binding.progressBar
val resetButton = binding.reset
Expand Down Expand Up @@ -205,5 +219,27 @@ class XmlActivity : AppCompatActivity() {
message.onLoading = {}
message.onSuccess = {}
message.onError = {}

val modalConfig = PayPalMessagesModalConfig(clientID = "someClientID")
val modal = PayPalMessagesModalView(context = this, config = modalConfig)
modal.getConfig()
modal.setConfig(modalConfig)
modal.environment = PayPalEnvironment.SANDBOX
modal.clientID = ""
modal.merchantID = ""
modal.partnerAttributionID = ""
modal.onClick = {}
modal.onApply = {}
modal.onLoading = {}
modal.onSuccess = {}
modal.onError = {}
modal.onCalculate = {}
modal.onShow = {}
modal.onClose = {}

val textView = TextView(this)
textView.setOnClickListener {
modal.show()
}
}
}
8 changes: 7 additions & 1 deletion demo/src/main/res/layout/activity_message.xml
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@
android:id="@+id/offerTypeLabel"
android:paddingTop="12dp"
android:paddingBottom="12dp"
android:layout_marginRight="12dp"
android:layout_marginEnd="12dp"
android:textStyle="bold"
android:textSize="16sp"/>
<Button
Expand Down Expand Up @@ -276,6 +276,12 @@
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>

<TextView
android:layout_width="match_parent"
android:layout_height="80dp"
android:text="@string/messages_modal_text"
android:id="@+id/messagesModalText" />

<!-- <com.paypal.messages.PayPalMessageView-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="80dp"-->
Expand Down
3 changes: 2 additions & 1 deletion demo/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
<resources>
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ExtraTranslation">
<string name="app_name">Message Configuration</string>
<string name="header_kotlin">Kotlin PayPal Message</string>
<string name="reload_label">Reset</string>
<string name="messages_modal_text">Click here for a modal</string>
</resources>
Loading

0 comments on commit f530024

Please sign in to comment.