Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mob 8058 (Web SDK: Click Handling) #328

Merged
merged 10 commits into from
Mar 19, 2024
Merged

Mob 8058 (Web SDK: Click Handling) #328

merged 10 commits into from
Mar 19, 2024

Conversation

hani-iterable
Copy link
Contributor

@hani-iterable hani-iterable commented Mar 18, 2024

JIRA Ticket(s) if any

Description

We have implemented Web click handling for embedded OOTB views.

Copy link
Contributor

@mprew97 mprew97 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a ton for the quick turnaround here! Have a few comments to address.

(localStorage.getItem(SHARED_PREF_EMAIL) as string) ??
(localStorage.getItem(SHARED_PREF_USER_ID) as string);

console.log('email', emailOrUserId);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we remove the console statement?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

}

trackEmbeddedClick(
message: any,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

shouldn't this be of type EmbeddedMessage?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have set 'IterableEmbeddedMessage' as it already exists and match with the Android SDK.

Comment on lines 193 to 194
buttonIdentifier: string | '',
clickedUrl: string | ''
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we don't need the | '' since that is just a string.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

campaignId: message?.metadata?.campaignId
};

const emailOrUserId =
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We shouldn't be tracking the click if there is nothing found in local storage. Shouldn't happen, but we should account for it. And ideally, email and userId should be fields passed in to this method so that the search for local storage is handled outside the scope of this method.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've implemented a check for both the email and userId in the Android SDK, following the same approach used in other methods. During API calls, the email and userId are added to the request, ensuring consistency across our SDK architectures.

handleOpenUrl(defaultAction?.type, defaultAction?.data)
}
parentStyle={{ margin: 0 }}
messageData={data}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we clarify this? Maybe call the Card's attribute message (instead of messageData) and then pass in a message, rather than data? The idea here is that we're passing in the message to be rendered... I think talking about "data" removes a bit of clarity

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

title={data?.title}
text={data?.body}
imgSrc={data?.mediaUrl}
parentStyle={{ margin: 0 }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is "parentStyle"? Just want to be sure I understand what this is / why it's named that way

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The 'parentStyle' will set the style to the parent view of all the components like background, borderRadius, etc.

text={data?.body}
imgSrc={data?.mediaUrl}
parentStyle={{ margin: 0 }}
messageData={data}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same comment as above about messageData. Won't keep calling this out, but I think my comment is valid for banner / notification / card

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

handleOpenUrl(defaultAction?.type, defaultAction?.data)
}
/>
<Notification key={index.toString()} messageData={data} />
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

messageData vs message again

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done


/* Note: Add export to this const when support Embedded Message View Types in a later release. */
const Banner = (props: IBannerProps) => {
export const Banner = (props: EmbeddedMessageData) => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should it receive an IterableEmbeddedMessage object, instead of EmbeddedMessageData?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can't. IterableEmbeddedMessage is responsible for determining the message type received, while EmbeddedMessageData contains the properties needed for custom styling of Out-of-the-Box (OOTB) views.


/* Note: Add export to this const when support Embedded Message View Types in a later release. */
const Card = (props: ICardProps) => {
export const Card = (props: EmbeddedMessageData) => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IterableEmbeddedMessage instead of EmbeddedMessagData?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can't. IterableEmbeddedMessage is responsible for determining the message type received, while EmbeddedMessageData contains the properties needed for custom styling of Out-of-the-Box (OOTB) views.

disableSecondaryBtn,
onClickView
}) => {
export const Notification = (props: EmbeddedMessageData) => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IterableEmbeddedMessage instead of EmbeddedMessageData?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can't. IterableEmbeddedMessage is responsible for determining the message type received, while EmbeddedMessageData contains the properties needed for custom styling of Out-of-the-Box (OOTB) views.

Comment on lines 60 to 62
export class IterableActionRunner extends IterableActionRunnerImpl {
static config = IterableConfig;
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hani-iterable What is this config needed for?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need for that. I have removed.

@bradumbaugh bradumbaugh self-requested a review March 18, 2024 21:53
Copy link
Contributor

@bradumbaugh bradumbaugh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some minor comments / questions

@mprew97
Copy link
Contributor

mprew97 commented Mar 19, 2024

Also, this is kind of a late catch, but can we remove instances of manually setting email and user id on local storage in the Web SDK source? We already have methods that customers/devs use to do that. You can see we have a setEmail and setUserId on the initialize() method we are already using for embedded in the react-example app.

We should just be able to fetch from local storage without having to set it, except for when setUser and setUserId is called.

See the method definition in authorization.ts. To use it, you would just call

const { setEmail, setUserId } = initialize(...)

@hani-iterable
Copy link
Contributor Author

hani-iterable commented Mar 19, 2024

initialize()

@mprew97 Got it, you're asking about the use of the 'initialize()' method. Do we need to pass the userID from the Sample app when calling any method related to Embedded messages, or is there another way to handle this?

@mprew97
Copy link
Contributor

mprew97 commented Mar 19, 2024

initialize()

@mprew97 Got it, you're asking about the use of the 'initialize()' method. Do we need to pass the userID from the Sample app when calling any method related to Embedded messages, or is there another way to handle this?

@hani-iterable For API requests, once you call setEmail or setUserId, those automatically get tacked on to all requests. In authorization.ts, see lines 237 - 328. We intercept any request using baseAxiosRequest and add the email or userId to the req.

Copy link
Contributor

@bradumbaugh bradumbaugh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

@mprew97 mprew97 merged commit 4cb8991 into embedded Mar 19, 2024
1 check passed
@mprew97 mprew97 deleted the MOB-8058 branch March 19, 2024 16:54
mprew97 added a commit that referenced this pull request Jun 12, 2024
* notificiation view implemented (#212)

* notificiation view implemented

* code changes as per recent review

* usage of banner view

* usage of notification view

* Webpack config changed for Notification View

---------

Co-authored-by: Vishal Joshi <joshivishal895@gmail.com>

* Embedded msg (#232)

* Embedded Manager Module - WIP

* Embedded Manager Module - added uuid library

* Code modified for embedded msg

* Documentation added

* Events example added

* Embedded msg configurations changed

* Import issue of embeddedManager fixed

* Circuler dependency solved

* Linting error fixing

* events code break down into separate folders

* Import issues fixed

---------

Co-authored-by: Vishal Joshi <joshivishal895@gmail.com>

* Embedded test (#234)

* Embedded Manager Module - WIP

* Embedded Manager Module - added uuid library

* Code modified for embedded msg

* Documentation added

* Events example added

* Test Cases added for embedded message manager

* Added Embedded Placement Test cases

* EmbeddedMsg Test Cases added

* embeddedManager import issue fixed

* Linting error resolved

* Test issues resolved

* basic changes to run the code

* change query params of get embedded messaging api

* remove code for embedded messaging sync parameters

* revert the changes that were made earlier to run the code.

---------

Co-authored-by: Vishal Joshi <joshivishal895@gmail.com>
Co-authored-by: Hani <haniramani@gmail.com>

* Embedded msgs example (#233)

* card view implemented

* code changes as per recent review

* Embedded Manager Module - WIP

* Embedded Manager Module - added uuid library

* usage of card view

* Code modified for embedded msg

* Documentation added

* Events example added

* Embedded msg example with card view

* Embedded msg example updated

* build config changed and few updates done on card component

* react-example improved

* Node webpack config changed

* Webpack config changed

* Yarn file issue fixed

* Resolve revice comments

---------

Co-authored-by: iamavishkar <imavishkar@gmail.com>
Co-authored-by: Vishal Joshi <joshivishal895@gmail.com>
Co-authored-by: Hani <haniramani@gmail.com>

* Embedded Messaging Dismiss Event Track (#241)

* set embedded message dismiss event

* remove unnecessary file

* display API response to the embedded page

* Resolve review comments

---------

Co-authored-by: Hani <haniramani@gmail.com>

* Dev 248 (Update payload to include updated placements) (#242)

* Embedded Manager Module - WIP

* Embedded Manager Module - added uuid library

* Code modified for embedded msg

* Documentation added

* Events example added

* Test Cases added for embedded message manager

* Added Embedded Placement Test cases

* EmbeddedMsg Test Cases added

* embeddedManager import issue fixed

* Linting error resolved

* Test issues resolved

* basic changes to run the code

* change query params of get embedded messaging api

* change placementIds param format in API query param

* change query param in sample app

* make placement id param optional

* modify test case accordingly

---------

Co-authored-by: Vishal Joshi <joshivishal895@gmail.com>
Co-authored-by: Hani <haniramani@gmail.com>

* banner view implemented (#213)

* banner view implemented

* code changes as per recent review

* usage of banner view

* Banner View Webpack config changed

* .babelrc config changed

* [MOB-7175]: add new filter method that leaves in JSON only messages (#238)

* add new filter method that leaves in JSON only messages

* Mentioning filterOnlyReadAndNeverTriggerMessages

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>
Co-authored-by: Brad Umbaugh <brad.umbaugh@iterable.com>

* ver bump (#240)

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

---------

Co-authored-by: Vishal Joshi <joshivishal895@gmail.com>
Co-authored-by: devcsomnicg <129495456+devcsomnicg@users.noreply.github.com>
Co-authored-by: Mitch Prewitt <44011584+mprew97@users.noreply.github.com>
Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>
Co-authored-by: Brad Umbaugh <brad.umbaugh@iterable.com>
Co-authored-by: Hani <haniramani@gmail.com>

* card view implemented (#214)

* card view implemented

* code changes as per recent review

* usage of card view

* build config changed and few updates done on card component

* react-example improved

* Node webpack config changed

* Webpack config changed

---------

Co-authored-by: Vishal Joshi <joshivishal895@gmail.com>
Co-authored-by: Hani <haniramani@gmail.com>
Co-authored-by: Mitch Prewitt <44011584+mprew97@users.noreply.github.com>

* Add embedded views to the SDK & integrate into sample app (#243)

* card view implemented

* code changes as per recent review

* Embedded Manager Module - WIP

* Embedded Manager Module - added uuid library

* usage of card view

* Code modified for embedded msg

* Documentation added

* Events example added

* Embedded msg example with card view

* Embedded msg example updated

* build config changed and few updates done on card component

* react-example improved

* Create manual.yml

* Node webpack config changed

* Webpack config changed

* Yarn file issue fixed

* [MOB-7175]: add new filter method that leaves in JSON only messages (#238)

* add new filter method that leaves in JSON only messages

* Mentioning filterOnlyReadAndNeverTriggerMessages

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>
Co-authored-by: Brad Umbaugh <brad.umbaugh@iterable.com>

* ver bump (#240)

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* embedded msg view integration

* integrate demo in sample app

* Resolve node build issue

* commit remaining code

* commit remaining files

---------

Co-authored-by: iamavishkar <imavishkar@gmail.com>
Co-authored-by: Vishal Joshi <joshivishal895@gmail.com>
Co-authored-by: Mitch Prewitt <44011584+mprew97@users.noreply.github.com>
Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>
Co-authored-by: Brad Umbaugh <brad.umbaugh@iterable.com>
Co-authored-by: Hani <haniramani@gmail.com>

* Add remaining events to web embedded messaging

* update the test cases

* Add remaining events to web embedded messaging

* Add remaining events to web embedded messaging

* Revert "Add remaining events to web embedded messaging"

This reverts commit 3704505.

* Update events.test.ts

* Add remaining events to web embedded messaging (#245)

* Add remaining events to web embedded messaging

* Resolve review comments

---------

Co-authored-by: Hani Vora <hani@Hanis-MacBook-Air.local>

* resolve build error issue using dev config

* Create test (#250) (#252)

* Create test (#250)

* Create test

* Update yarn.lock (#251)

* Update events.schema.ts (#257)

* Update types.ts (#262)

* Update events.schema.ts (#259)

* Update EmbeddedForm.tsx (#253)

* Delete test (#254)

* Update EmbeddedMsgs.tsx (#255)

* Update embeddedManager.ts (#256)

* Update types.ts (#258)

* Update events.test.ts (#260)

* Update events.ts (#261)

* Update EmbeddedForm.tsx (#290)

* Create Functions.ts (#291)

* Update embeddedManager.ts (#292)

* Update events.ts (#293)

* Create functions (#294)

* Rename functions to functions.ts (#298)

* Update embeddedManager.test.ts (#299)

* Embedded received event (#278)

* change in embedded api params

* Update EmbeddedMsgs.tsx (#263)

* Update index.tsx (#264)

* Update index.tsx (#265)

* Update index.tsx (#266)

* Update embeddedManager.ts (#267)

* Update index.ts (#268)

* Update events.schema.ts (#270)

* Update types.ts (#271)

* Update yarn.lock (#272)

* Create IterableActionRunner.ts (#274)

* Update embeddedManager.ts (#276)

* Update types.ts (#277)

* Resolve build fail issue (#289)

* Resolve merge conflicts

* Embedded msg image (#286)

* Create test (#250)

* Create test

* Update yarn.lock (#251)

* Update events.schema.ts (#257)

* Update types.ts (#262)

* Update events.schema.ts (#259)

* Update EmbeddedForm.tsx (#253)

* Delete test (#254)

* Update EmbeddedMsgs.tsx (#255)

* Update embeddedManager.ts (#256)

* Update types.ts (#258)

* Update events.test.ts (#260)

* Update events.ts (#261)

* Update index.tsx (#284)

* Update index.tsx (#285)

* Resolve merge conflicts

* Embedded text wrap (#283)

* Create test (#250)

* Create test

* Update yarn.lock (#251)

* Update events.schema.ts (#257)

* Update types.ts (#262)

* Update events.schema.ts (#259)

* Update EmbeddedForm.tsx (#253)

* Delete test (#254)

* Update EmbeddedMsgs.tsx (#255)

* Update embeddedManager.ts (#256)

* Update types.ts (#258)

* Update events.test.ts (#260)

* Update events.ts (#261)

* Update index.tsx (#279)

* Update index.tsx (#280)

* Update index.ts (#281)

* Update index.tsx (#282)

* Update index.tsx (#295)

* Update index.tsx (#296)

* Update index.tsx (#297)

* Embedded message button click (#273)

* change in embedded api params

* Update EmbeddedMsgs.tsx (#263)

* Update index.tsx (#264)

* Update index.tsx (#265)

* Update index.tsx (#266)

* Update embeddedManager.ts (#267)

* Update index.ts (#268)

* Update events.schema.ts (#270)

* Update types.ts (#271)

* Update yarn.lock (#272)

* Create IterableActionRunner.ts (#274)

* Remove unused code (#275)

* Update embeddedManager.ts (#287)

* resolve error for OOTB not responding properly (#309)

* Resolve: Content not aligned for notification view (#310)

* set text align for default style (#311)

* make cursor to pointer (#312)

* Make UI responsive (#314)

* Make UI responsive

* Resolve review comments

* Mob 7843 (#307)

* set message if message is not available

* resolve review comments

* MOB-7859 (Long buttons become stacked) (#315)

* modify button UI

* resolve merge conflicts

* Lower `jest-worker@28.1.3` version (#316)

* make OOTB views  unavailable for Beta (#319)

* remove markdown files for embedded (#326)

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* remove ActionHandler (#321)

* update the doc (#323)

* Handling incoming embedded messages (#320)

* Handling incoming embedded messages

* add missing requirement

* Update embeddedManager.test.ts

* resolve merge conflicts

* Support custom as well default click handler (#317)

* Support custom as well default click handler

* remove circular dependency

* Resolve PR comments

* fix conflicts (#327)

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* Mob 8058 (Web SDK: Click Handling) (#328)

* Implement for embedded click

* modify test cases

* Resolve review comments

* change import path to resolve build error

* resolve build failure

* resolve review comments

* Resolve circular dependency

---------

Co-authored-by: Mitch Prewitt <44011584+mprew97@users.noreply.github.com>

* update styles (#329)

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* update (#330)

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* session track (#331)

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* add uuid as session ID (#332)

* Resolve errors (#333)

* fix (#340)

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* Remove console statements (#341)

* fix

* fix

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* bump version 1.1.0-beta (#342)

* Fix beta publish issue (#344)

* fix publish issue

* revert lock changes

* fix

* now?

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* OOTB Rework: Need to be pure JS/HTML/CSS (#354)

* OOTB Rework: Need to be pure JS/HTML/CSS

* OOTB Rework: Need to be pure JS/HTML/CSS

* added id of all component

* added custom changes

* fixed click issue

* fixed comments

* handled click by elements name

* updated example

* fixed cursor pointer

* Update EmbeddedMsgs.tsx (sample code) to use EmbeddedMessageUpdateHandler

* fixed client's comments

* Fixed comments

* updated click events as common

* HTTP call in retrieveEmbeddedMessages (#355)

* HTTP call in retrieveEmbeddedMessages

* updated test file

* sdk and platform updated

* updated test file

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* Web SDK is incorrectly parsing custom action objects (#358)

* OOTB Rework: Need to be pure JS/HTML/CSS

* OOTB Rework: Need to be pure JS/HTML/CSS

* added id of all component

* added custom changes

* fixed click issue

* fixed comments

* handled click by elements name

* updated example

* fixed cursor pointer

* Update EmbeddedMsgs.tsx (sample code) to use EmbeddedMessageUpdateHandler

* HTTP call in retrieveEmbeddedMessages

* updated test file

* fixed client's comments

* Fixed comments

* updated click events as common

* sdk and platform updated

* updated test file

* Web SDK is incorrectly parsing custom action objects

* updated listener name and handle callback

* Updated custom action object type

* HTTP call in retrieveEmbeddedMessages (#355)

* HTTP call in retrieveEmbeddedMessages

* updated test file

* sdk and platform updated

* updated test file

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* Too many Embedded-related interfaces? (#359)

* Updated interfaces

* removed duplicate interface from in-app

* Updated IEmbeddedMessage in events

* Updated EnbeddedMessagingDismiss, EnbeddedMessagingSession

* Removed unused interfaces

* Removed unused interfaces

* Updated test.ts

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* updated code in useeffect

* pass package name and expose trackembeddedclick as standalone function (#363)

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* Update Embedded requests to not need to pass userId or email (#364)

* OOTB Rework: Need to be pure JS/HTML/CSS

* OOTB Rework: Need to be pure JS/HTML/CSS

* added id of all component

* added custom changes

* fixed click issue

* fixed comments

* handled click by elements name

* updated example

* fixed cursor pointer

* Update EmbeddedMsgs.tsx (sample code) to use EmbeddedMessageUpdateHandler

* HTTP call in retrieveEmbeddedMessages

* updated test file

* fixed client's comments

* Fixed comments

* updated click events as common

* sdk and platform updated

* updated test file

* Web SDK is incorrectly parsing custom action objects

* updated listener name and handle callback

* Updated custom action object type

* HTTP call in retrieveEmbeddedMessages (#355)

* HTTP call in retrieveEmbeddedMessages

* updated test file

* sdk and platform updated

* updated test file

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* Too many Embedded-related interfaces? (#359)

* Updated interfaces

* removed duplicate interface from in-app

* Updated IEmbeddedMessage in events

* Updated EnbeddedMessagingDismiss, EnbeddedMessagingSession

* Removed unused interfaces

* Removed unused interfaces

* Updated test.ts

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* updated code in useeffect

* pass package name and expose trackembeddedclick as standalone function

* Update Embedded requests to not need to pass userId or email

* removed unused code from test

* Updated endpoints in setUserId and setEmail

* added impression endpoint

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* Rework Embedded Session Manager (#362)

* OOTB Rework: Need to be pure JS/HTML/CSS

* OOTB Rework: Need to be pure JS/HTML/CSS

* added id of all component

* added custom changes

* fixed click issue

* fixed comments

* handled click by elements name

* updated example

* fixed cursor pointer

* Update EmbeddedMsgs.tsx (sample code) to use EmbeddedMessageUpdateHandler

* HTTP call in retrieveEmbeddedMessages

* updated test file

* sdk and platform updated

* updated test file

* Web SDK is incorrectly parsing custom action objects

* updated listener name and handle callback

* Updated custom action object type

* Too many Embedded-related interfaces? (#359)

* Updated interfaces

* removed duplicate interface from in-app

* Updated IEmbeddedMessage in events

* Updated EnbeddedMessagingDismiss, EnbeddedMessagingSession

* Removed unused interfaces

* Removed unused interfaces

* Updated test.ts

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* Rework Embedded Session Manager

* Updated messageId

* Update types.ts

* Update EmbeddedMsgs.tsx

* Fixed end session event in SDK

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* [MOB-8148]:  clean up embedded types (#365)

* OOTB Rework: Need to be pure JS/HTML/CSS

* OOTB Rework: Need to be pure JS/HTML/CSS

* added id of all component

* added custom changes

* fixed click issue

* fixed comments

* handled click by elements name

* updated example

* fixed cursor pointer

* Update EmbeddedMsgs.tsx (sample code) to use EmbeddedMessageUpdateHandler

* HTTP call in retrieveEmbeddedMessages

* updated test file

* sdk and platform updated

* updated test file

* Web SDK is incorrectly parsing custom action objects

* updated listener name and handle callback

* Updated custom action object type

* Too many Embedded-related interfaces? (#359)

* Updated interfaces

* removed duplicate interface from in-app

* Updated IEmbeddedMessage in events

* Updated EnbeddedMessagingDismiss, EnbeddedMessagingSession

* Removed unused interfaces

* Removed unused interfaces

* Updated test.ts

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* Rework Embedded Session Manager

* Updated messageId

* Update types.ts

* Update EmbeddedMsgs.tsx

* remove react dep

* Fixed end session event in SDK

* checking

* need to see

* remove dupe schema

* cleanup

* clean up packages and more

* typo

* fix tests and change requests

* further change requests

* oop

* fix circular deps

* additional cleanup and rework

* fix embeddedManager test

* fix base branch issues

* rename to iterable

* update OOTB names

* export

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>
Co-authored-by: hardikmashru <150107929+hardikmashru@users.noreply.github.com>
Co-authored-by: Hardik Mashru <hardik.mashru@iterable.com>
Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* [MOB-8405]: Add new eslint rules (#367)

* OOTB Rework: Need to be pure JS/HTML/CSS

* OOTB Rework: Need to be pure JS/HTML/CSS

* added id of all component

* added custom changes

* fixed click issue

* fixed comments

* handled click by elements name

* updated example

* fixed cursor pointer

* Update EmbeddedMsgs.tsx (sample code) to use EmbeddedMessageUpdateHandler

* HTTP call in retrieveEmbeddedMessages

* updated test file

* sdk and platform updated

* updated test file

* Web SDK is incorrectly parsing custom action objects

* updated listener name and handle callback

* Updated custom action object type

* Too many Embedded-related interfaces? (#359)

* Updated interfaces

* removed duplicate interface from in-app

* Updated IEmbeddedMessage in events

* Updated EnbeddedMessagingDismiss, EnbeddedMessagingSession

* Removed unused interfaces

* Removed unused interfaces

* Updated test.ts

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>

* Rework Embedded Session Manager

* Updated messageId

* Update types.ts

* Update EmbeddedMsgs.tsx

* remove react dep

* Fixed end session event in SDK

* checking

* need to see

* remove dupe schema

* cleanup

* clean up packages and more

* typo

* fix tests and change requests

* further change requests

* oop

* fix circular deps

* additional cleanup and rework

* fix embeddedManager test

* fix base branch issues

* update lint rules

* more tweaks

---------

Co-authored-by: hardikmashru <hardikmashru@iterable.com>
Co-authored-by: hardikmashru <150107929+hardikmashru@users.noreply.github.com>
Co-authored-by: Hardik Mashru <hardik.mashru@iterable.com>
Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* MOB-8139 & MOB-8028 (#369)

* pushed changes

* Error handling for trackEmbeddedClick

Error handling for trackEmbeddedClick

* sample app changes

* revert unnecessary react-example changes

* revert react-example unnecessary changes

* implemented changes as per review suggestions

* Update request.ts

* create utility method for getting url from action (#371)

create utility method for getting url from action

* [MOB-8416]: easier UUID testing in sample app (#374)

* easier UUID testing in sample app

* some cleanup and change request additions

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* fix focus bug and console error (#377)

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* [MOB-8425]: strengthen network interceptors (#376)

* easier UUID testing in sample app

* hopping

* update interceptors and routes

* oops

* accidental delete from merge

* forgot route

* wrong route

* oops

* Update src/constants.ts

Co-authored-by: Paul Jung <paul.jung@iterable.com>

* update const name

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>
Co-authored-by: Paul Jung <paul.jung@iterable.com>

* [MOB-8475]: Remove Sample TImeout (#379)

* easier UUID testing in sample app

* hopping

* update interceptors and routes

* oops

* accidental delete from merge

* forgot route

* wrong route

* oops

* Update src/constants.ts

Co-authored-by: Paul Jung <paul.jung@iterable.com>

* update const name

* remove timeout

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>
Co-authored-by: Paul Jung <paul.jung@iterable.com>

* MOB 8472 (#390)

* pushed changes

* Update LoginForm.tsx

* fix cardView, notificationView, bannerView

* fix aspect-ratio, padding

* fix margin-top for banner image

* revert LoginForm changes

* final fix card, banner, notification view

* UI fixes, responsive fixes and impression tracker screen fixes

* put back env.example

* rename env.example

* removed inline style

* rollback for unnecessary PR diff

* Update index.tsx

* update .evn.example

* fix card, banner, notification view

* updates

* escape htmltext

---------

Co-authored-by: Hardik Mashru <harrymash2006@gmail.com>

* Fixing placementIds issue on IterableEmbeddedManager (#392)

* [MOB-8503]: refactor OOTB views (#391)

* mostly up to date

* updates

* teeny

* button cleanup

* oop

* add style update examples

* jsdoc comments

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* MOB-8604 (#394)

* update trackNewlyRetrieved

* clean up

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* MOB-8600 (#393)

* expose handleEmbeddedClick

* fix embeddedClick alias

* Update utils.ts

* Update utils.ts

* rename

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* [MOB-8639]: add elements to OOTB type (#395)

* add elements to OOTB type

* update var name

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* [MOB-8646]: targetUrl not being sent on click (#400)

* update to target url

* update func name

---------

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

* jwt-gen param issue (#402)

Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>

---------

Co-authored-by: Avishkar Singh <93832078+iamavishkar@users.noreply.github.com>
Co-authored-by: Vishal Joshi <joshivishal895@gmail.com>
Co-authored-by: devcsomnicg <129495456+devcsomnicg@users.noreply.github.com>
Co-authored-by: Hani <haniramani@gmail.com>
Co-authored-by: iamavishkar <imavishkar@gmail.com>
Co-authored-by: mitch prewitt <mitch.prewitt@iterable.com>
Co-authored-by: Brad Umbaugh <brad.umbaugh@iterable.com>
Co-authored-by: Hani Vora <hani@Hanis-MacBook-Air.local>
Co-authored-by: Hani Vora <150109181+hani-iterable@users.noreply.github.com>
Co-authored-by: Justin Yu <31014517+jyu115@users.noreply.github.com>
Co-authored-by: hardikmashru <150107929+hardikmashru@users.noreply.github.com>
Co-authored-by: hardikmashru <hardikmashru@iterable.com>
Co-authored-by: Hardik Mashru <hardik.mashru@iterable.com>
Co-authored-by: Paul Jung <paul.jung@iterable.com>
Co-authored-by: Hardik Mashru <harrymash2006@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants