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

Feature: Interest groups bubble plotting #865

Merged
merged 69 commits into from
Nov 18, 2024
Merged

Conversation

amovar18
Copy link
Collaborator

@amovar18 amovar18 commented Nov 4, 2024

Description

In this PR, we aim to create a container for interest group bubbles. So that it looks better when there are more number of interest group bubbles.

Relevant Technical Choices

  • A new module bubbles has been added. This module will manage the animation for the loading the interest group and joining interest group.
  • this will also manage the expansion and minification of the interest group bubble container.

Testing Instructions

  • Clone the branch.
  • In the terminal run cd ee && npm i && npm run start.
  • Now open https://localhost:8080/index.html.
  • Once interest group is added by advertiser you can click on this and expand the circle to see interest groups.

Additional Information:

Screenshot/Screencast

Screenshot 2024-11-04 at 16 34 55

Screen.Recording.2024-11-04.at.16.41.39.mov

Checklist

  • I have thoroughly tested this code to the best of my abilities.
  • I have reviewed the code myself before requesting a review.
  • This code is covered by unit tests to verify that it works as intended.
  • The QA of this PR is done by a member of the QA team (to be checked by QA).

Partially addresses #857

Remove timeline line in interactive mode.
Introduce bubbles config to handle interest group bubbles animation.
@mohdsayed
Copy link
Collaborator

mohdsayed commented Nov 15, 2024

Some more improvements are required.

  • Remove blur from small circle.
  • Make expand and collapse icons grey.
  • Move collapse icon closer to the larger circle.
  • Close on ESC key press and when clicking outside the larger circle.
  • Use grey color for both small and large circles.
  • Change cursor to pointer for all clickable circles.
  • Fix issue where expand and collapse icons appear after a quick refresh.

@mohdsayed
Copy link
Collaborator

@amovar18 Two issues are still pending

#865 (comment)

font-weight: bolder;
border-radius: 50%;
}

Copy link
Collaborator

Choose a reason for hiding this comment

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

As the CSS is growing, we should soon move it to a css file.

@@ -0,0 +1,525 @@
/*
Copy link
Collaborator

Choose a reason for hiding this comment

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

Moving this to module as it encapsulates functional unit of the application, responsible for a specific feature.

Copy link
Collaborator

@mohdsayed mohdsayed left a comment

Choose a reason for hiding this comment

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

Looks great

@mohdsayed mohdsayed merged commit 1af5770 into develop Nov 18, 2024
6 checks passed
@mohdsayed mohdsayed deleted the feat/ig-bubbles-plot branch November 18, 2024 07:04
amovar18 added a commit that referenced this pull request Dec 12, 2024
* Add click event to the interest group bubbles.

* Fix barragge animation.

* Fix click event.

* Fix barrage animation.
Remove timeline line in interactive mode.

* Fix samll bugs in protected audience.

* Fix order of calling.

* Add default height and width for canvas.
Introduce bubbles config to handle interest group bubbles animation.

* Set canvas height and width.

* Remove barrage animation code from flow.

* Remove drawSmallcircles from timeline.
Fix references.

* Remove drawPreviousCircles from utils.

* Create bubbles file to handle interest group bubbles.

* Fix barrage animation and reverseBarrage animation.

* Add isExpanded listener.

* Change interest group design.

* Fix click event and circle addition to the interest group.

* Remove comment.

* Fix arrow background.

* Add click event at correct place.

* Calculate the maximum number of bubbles that can be drawn in the big circle.

* Make the text of interest group count white.

* Make interest group travel from the minified circle to the runAdAuction box.

* Add text for interestgroup bubbles.

* Use d3js for expanded mode.

* Fix in barrage animation.

* Group IG by websites.

* Ad randomised value generation.

* Use d3js for bubble containers.

* Center the expanded bubble container.

* Complete usage of D3.js.

* Add text to interest group bubbles.

* Fix bug.
reduce IG counts

* Add expanding animation.
Remove expanded bubble.
Dynamically change zIndex of interest group canvas during barrage animation.

* Use interest group name instead of uuid.

* remove uuid.

* Change value to length of string.

* blur background when container expands.

* Add a cross button for intuitive closing of the expanded bubble.

* Remove circle transition to right when no bubble is added.

* Round the p tag and create method to make the color visible.

* use interest group names.

* Fix bubble reverse barrage animation.

* Fix issues post merge.

* Remove ee folder.

* Revert removal of interest group.

* Move bubble to top left corner of the circle.

* Expand circle on hover.

* have click animation to depict click.

* Add collapse and expand button.

* Stop barrage animation when bubble is expanded.

* Add cursor pointer.

* Remove background blur use flex for count display.

* Change colors of the expand and collapse button.

* Calculate angle and place close button there.

* Fix close button not clickable.

* Add escape event to close the bubble.

* Remove unused code.
Add play and pause mechanism

* Dont show bubbles which have been paused during barrage animation.

* Fix click listeners.

* Remove delay.

* Add ripple effect to the auction flow.

* Fix expansion and minification of the interst group bubbles.

* Convert all setInterval to requestAnimationFrame.

* Fix ripple effect cutting off boxes

* Move bubbles to modules and add JSDocs

* Fix spacing

---------

Co-authored-by: sayedtaqui <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants