* Move save over and add button labels
* comment notification design and functionality
* controller error handling
* add ternery operator for background class
* minor cleanup
* add proper styling toggles
* tests and mobile spec
* add for all buttons
* add article as a param
* comment is not required on article preview
* update policy spec
* add test for coverage
* add proper button titles
* use the last user comment as comment id
* add better error handling and remove multiple fetch calls in js
* copy change to threads
* update copy, fix multiple fetch calls, add observer for loading more notifications
* update spec
* add rspecs
* more test specs
* fix test specs
* subscribe button text tests
* add export
* optimistically update ui function tests
* button initialize test
* check for comment ancestry
* add feature flag block
* some cleanup
* update logic and specs
* oops
* rubocop issues
* change config names
* change config names
* fix spec
* add one more conditional
* check for comments
* service-object the toggler
* separate routes
* continual refactoring
* refine spec tests
* clean up policy
* Adjust js and view files to match be params
* some service object refactoring
* separate endpoints on client-side
* broken spec
* service specs
* policy spec fixes
* remove action param
* remove action param from spec
* minor updates
* trigger build
* update to post
* Services don't need permitted params
* Notifications continue to be a mess, decorator specs to follow
* Not toggling now
* This doesn't really belong here
* Fix tests after moving
* Streamline front-end
* There could be errors?
* polymorphic_name is a class thing
* ☠️ json_data in notification views
* Use feature_flag helper to get current_user
* Cannot derive current subscription status from notification, only from subscription
* Default is subscribe to all article comments
* Sync up matching unsubscribe, make subscribe idempotent-ish
* Temporarily comment-out button jest tests to see if I can unstick CI
* Stop trying to detect potential subscribe-to-comment
* Stop trying to detect potential subscribe-to-comment
* Minor spec refactoring
* Add specs for article notification decoration
* NotificationDecorator specs are rather long
* Rubocop likes it?
* Minor spec refactoring
* Doesn't need to stay pending
* Add spec for subscription finder
* Expand Subscribe service specs
* YAGNI, but I don't like hard-coded config
* Refactor Unsubscribe service specs
* nobody expects the infinite scroll
* This *might* work, except for feature flag
* Ancestry can be quite deep actually
* Rubocop
* Update subscribe button for subscribe-to-thread
* Jest tests are just tests
* hasAttribute != getAttribute
* Test knows **nothing** about window size
* Tests have been lying about mobileLabel this whole time
* Make payload/endpoint testable
* Is Jest actually happy???
* Still cleaning up jest/eslint
* Temporarily comment-out cypress tests pending feature flag
* Thanks, Rubocop, what would we do without you
* Preserve round-trip for 'top-level' and 'only-author' subscriptions
* Update specs
* Move save button icon
* Update test with better config param
* Try feature flag specific to cypress env
* Tell cypress to wait for (un)subscribing to work
---------
Co-authored-by: Lawrence S <lawrence@forem.com>
Co-authored-by: Joshua Wehner <joshua@forem.com>
* Basic implementation
* Nit fix
* Using existing profile update api
* API call working
* Basic full implementation
* Nit fixes in design
* UI changes
* Image upload limit set
* Removed drag & drop
* Image size issue fix
* Minor naming fixes
* Removed native mobile code
* Nit fix
* Added few tests
* Added test
* Added test
* Added image upload error
* Added validateFileInput test failure case
* Updated code to test fix
* Revert db changes
* Minor design fixes
* Minor updated test
* Added validateFileInputs test temporarily
* Added processImageUpload test temporarily
* Aded files count test
* Minor warning fixes
* Updated placeholder text
* Added tests for TextInput and TextArea
* Removed un-required test file
* Removed un-required code
* Minor code cleaning
Co-authored-by: Lawrence <lawrence@forem.com>
Co-authored-by: Rajat Talesra <rajat@forem.com>
Co-authored-by: Ridhwana <Ridhwana.Khan16@gmail.com>
Co-authored-by: Philip How <philip.j.how@gmail.com>
* feat: first pass at CTA Tag
* fix: strip_tags before using the link
* default hover
* feat: add the type of cta
* feat: add own ltag by copying the utility class
* feat: rename property to style
* feat: add style and width
* feat: add xit test
* feat: add spec for unordered options
* chore: some css
* feat: update the cta spec to remove style and width options
* feat: move billboard related code out of widgets
* fix: mobile display ad below the comments section
* feat: cta_tag strip tags input
* feat: update the editor docs
* feat: add help text to teh liquid guide and the editor guide
* feat: fix the css styles of the CTA
* cgore: alphabetical order
* chore: move everything on one line
---------
Co-authored-by: Mac Siri <mac@forem.com>
* Basic thumbsup, thumbsdown and vomit
* Refined UI of flags and vomits
* If check
* Optimised code and added a method in article.rb
* Removed public keyword
* Nit fixes
* init
* remove from asset pipeline and add tests
* add utc date conversion test
* try removing last tests
* add some more tests
* add tests for more coverage
* add yet more tests
* separate descibe statments
* add dt test back
* more test cleanup
* include pack js files
* add jest back
* Include /packs/ in code coverage metric
* derp
* revert jest
* reformat some of the test accordingly
* try e2e
* fix cypress test
---------
Co-authored-by: Mac Siri <mac@forem.com>
Co-authored-by: Mac Siri <krairit.siri@gmail.com>
* feat: tests for series list on article page
* feat: test for jump to comments button (needs fix)
* feat: tests for reaction drawer on article page
* feat: test for full date on hover??
* feat: add full date on hover tests for all pages with publish dates
* fixed jumping to comments test
* move initialisers to packs
* fix coverage issues
* fix flaky login modal spec
* switch back to using onclick instead of addEventListener
* add dashboard sort initializer and tests within packs folder
* run dashboard sort initializer in base.jsx spinup and on InstantClick change
* remove assets/javascripts' dashboard sort initialization and comment out original file
* fully remove original dashboard sort initializer file
* export both functions within initializeDashboardSort
* refactor import of selectNavigation function within CategoryLinksMobile
* feat: tests for tag page sidebar drawers on mobile
* feat: tests for hero area/banner on home feed
* refactor: move ui interaction initialisers to packs
* remove old filter select implementation
Co-authored-by: Ridhwana <Ridhwana.Khan16@gmail.com>
Co-authored-by: Lawrence S <lboogie@Lawrences-Air.attlocal.net>
Co-authored-by: Rajat Talesra <rajat@forem.com>
* changes to the divider
* chore: update the flag icon
* chore: add a consistent width and height to all the icons in the dropdown
* chore: move widtha dn height closer to definition
* feat: make the border 1pm
* feat: add a margin to thehr
* add margin all round for hr
* chore: same 8px for all around
* Update notifications_helper
* Update notification decorator
* Removed old notifications views
* Remove flag check from _actions partial
* Remove feature flag from views
* Remove flag from model
* Update logic in reaction drawer button
* Missed this somehow
* Update app/assets/javascripts/initializers/initializeArticleReactions.js
Co-authored-by: Ridhwana <Ridhwana.Khan16@gmail.com>
* Update these tests to multiple reactions
* Adjust logged-out test to account for multiple reactions
* Removed unused
* Try to boost coverage
---------
Co-authored-by: Ridhwana <Ridhwana.Khan16@gmail.com>