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

[PAY-3282] Prevent publishing 0 length playlist #9328

Merged
merged 6 commits into from
Jul 31, 2024
Merged

Conversation

raymondjacobson
Copy link
Member

Description

image

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Provide repro instructions & any configuration.

  • Edit album (hidden, public)
  • Edit playlist (hidden w/ tracks, hidden w/o tracks, public)
  • Edit track (hidden, public, scheduled)

Copy link

changeset-bot bot commented Jul 31, 2024

⚠️ No Changeset found

Latest commit: ee6f8fe

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@@ -157,6 +158,12 @@ export const EditCollectionForm = (props: EditCollectionFormProps) => {
<VisibilityField
entityType={isAlbum ? 'album' : 'playlist'}
isUpload={isUpload}
isAllowedToPublish={
isAlbum ||
Copy link
Contributor

Choose a reason for hiding this comment

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

why do we check isAlbum separately? shouldn't we also check that albums have more than 0 tracks?

Copy link
Contributor

Choose a reason for hiding this comment

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

I remember something about removing this check, but tbh I don't remember the logic. I think it has to do with hidden/scheduled tracks being possible now?

@@ -157,6 +158,12 @@ export const EditCollectionForm = (props: EditCollectionFormProps) => {
<VisibilityField
entityType={isAlbum ? 'album' : 'playlist'}
isUpload={isUpload}
isAllowedToPublish={
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: isPublishable?

@@ -197,16 +200,18 @@ const VisibilityMenuFields = (props: VisibilityMenuFieldsProps) => {
const { isEnabled: isPaidScheduledEnabled } = useFeatureFlag(
FeatureFlags.PAID_SCHEDULED
)
const { initiallyPublic, entityType } = props
const { initiallyPublic, isAllowedToPublish, entityType = true } = props
Copy link
Contributor

Choose a reason for hiding this comment

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

why the = true for entityType?

Copy link
Member Author

Choose a reason for hiding this comment

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

accident!

label={messages.public}
description={messages.publicDescription}
/>
{isAllowedToPublish ? (
Copy link
Contributor

Choose a reason for hiding this comment

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

I think just removing the option might not be what we want?
In these cases we usually disable the option and show a tooltip explaining the reason it's disabled (e.g. collectible gated when you don't have any collectibles)

Copy link
Member Author

Choose a reason for hiding this comment

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

good call^ will update

Copy link
Contributor

Choose a reason for hiding this comment

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

ty! You can probably take the tooltip copy from PublishButton which has a disabled state with tooltip

Copy link
Member Author

Choose a reason for hiding this comment

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

nice!
image
updated :)

@pull-request-size pull-request-size bot added size/M and removed size/S labels Jul 31, 2024
@audius-infra
Copy link
Collaborator

Preview this change https://demo.audius.co/rj-pay-3282

Copy link
Contributor

Choose a reason for hiding this comment

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

What does this do?

@@ -157,6 +158,12 @@ export const EditCollectionForm = (props: EditCollectionFormProps) => {
<VisibilityField
entityType={isAlbum ? 'album' : 'playlist'}
isUpload={isUpload}
isAllowedToPublish={
isAlbum ||
Copy link
Contributor

Choose a reason for hiding this comment

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

I remember something about removing this check, but tbh I don't remember the logic. I think it has to do with hidden/scheduled tracks being possible now?

@@ -30,14 +30,16 @@ import { mergeReleaseDateValues } from './mergeReleaseDateValues'

const messages = {
...visibilityMessages,
scheduled: (date: string) => `Scheduled for ${formatCalendarTime(date)}`
scheduled: (date: string) => `Scheduled for ${formatCalendarTime(date)}`,
emptyPlaylistTooltipText: 'You must add at least 1 song.'
Copy link
Contributor

Choose a reason for hiding this comment

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

does it have to be a public song?

Copy link
Member Author

Choose a reason for hiding this comment

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

I guess based on how we do the checks, no, but maybe we can address that separately? good thought...!

Copy link
Contributor

@sddioulde sddioulde left a comment

Choose a reason for hiding this comment

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

remove blink code

packages/web/public/actions.json Outdated Show resolved Hide resolved
@pull-request-size pull-request-size bot added size/S and removed size/M labels Jul 31, 2024
@raymondjacobson raymondjacobson enabled auto-merge (squash) July 31, 2024 17:47
@audius-infra
Copy link
Collaborator

Preview this change https://demo.audius.co/rj-pay-3282

@raymondjacobson raymondjacobson merged commit e6374bc into main Jul 31, 2024
13 of 14 checks passed
@raymondjacobson raymondjacobson deleted the rj-pay-3282 branch July 31, 2024 17:53
audius-infra pushed a commit that referenced this pull request Aug 3, 2024
[7e9ef50] [C-4681] [C-4680] Add analytics for search v2 (#9363) Sebastian Klingler
[d9b0c78] [PAY-3279] Fix misc web album UI issues (#9362) Raymond Jacobson
[1b494ff] Improve SDK rewards claiming errors with RewardManagerError abstraction (#9214) Marcus Pasell
[05720e3] [C-4891] Add artist pick to mobile (#9359) Dylan Jeffers
[932ddc7] Add cors headers for actions (#9360) Raymond Jacobson
[56409de] [C-4798] Filter all categories by verified (#9353) Sebastian Klingler
[048a4d8] [PAY-3253] Fix confirmation drawer height (#9310) Dylan Jeffers
[245baf4] [C-4915] Fix create collection card height (#9357) Dylan Jeffers
[216a3fb] [C-4895] Fix profile screen verified badge (#9356) Dylan Jeffers
[9500340] [C-4899] Fix isrc and iswc validation (#9352) Dylan Jeffers
[7c780e8] Fix sign in (#9355) Dylan Jeffers
[654e7a1] Add IconTowerBroadcast to harmony (#9354) Andrew Mendelsohn
[a225c68] [PAY-3311] Create one_to_many_dms flag (#9351) Andrew Mendelsohn
[6271d09] [C-4896] [C-4893] [C-4913] BPM precision adjustments (#9349) Sebastian Klingler
[dc2a681] Remove null checks for metadata items in useXMetadata (#9350) Reed
[06cbc13] Hide play counts for all gated content in TracksTable (#9347) Reed
[4de149f] [C-4897] Improve empty edit collection page (#9346) Dylan Jeffers
[67cbdfe] Update dapp-store build artifacts audius-infra
[f1d908b] Fix show premium downloads message (#9344) Saliou Diallo
[34445b8] [C-3907] Add empty state for artist results in sign up flow (#9343) Kyle Shanks
[dc84357] add bpm edit flag col (#9324) Michelle Brier
[b50abba] Add actions.json to cloudflare (#9341) Raymond Jacobson
[8e9f6c3] [PAY-3283] Show high res artwork in edit (#9342) Raymond Jacobson
[e91b12a] [C-4905] Fix app crash when navigating to let them dj when signed out (#9340) Kyle Shanks
[8dbbd21] Add actions.json for solana blink support (#9331) Raymond Jacobson
[3e70a7f] [QA-1374] Fix play/preview logic on track page (#9337) Dylan Jeffers
[1e35fc3] [PAY-3298] Fix track preview generation (#9339) Dylan Jeffers
[6867056] [C-4903] Update icon sizes for collection card actions and notifications (#9338) Kyle Shanks
[6c7a231] [PAY-3271] Prevent navigation prompt from showing on delete (#9336) Andrew Mendelsohn
[e1b8690] PAY-3290 Special Access should disable entirely (#9334) Marcus Pasell
[0a64f84] PAY-3291 Don't show purchase in overflow menu for non-purchase-gated tracks (#9335) Marcus Pasell
[0b2c061] PAY-3287 Validate main form on submitting access gate subform mobile (#9332) Marcus Pasell
[9e81415] PAY-3288 Fix edit collection confirmations on mobile (#9330) Marcus Pasell
[a3bfb57] Fix CollectionCard test (#9329) Sebastian Klingler
[e6374bc] [PAY-3282] Prevent publishing 0 length playlist (#9328) Raymond Jacobson
[b799fcb] typescript impl of R2(crc32) + R2(sha256) ordering. (#8942) Steve Perkins
[eb8724e] PAY-3275 Portal drawers to the correct location (#9325) Marcus Pasell
[f404f01] Remove legacy edit track (#9323) Andrew Mendelsohn
[11f0ed5] [PAY-3274] Show 'releases today' on mobile (#9314) Andrew Mendelsohn
[18f4bea] [PAY-3197] Remove gated-content-upload-prompt drawer (#9318) Reed
[c36b94c] C-4894 Make edit track/edit collection use same buttons (#9321) Marcus Pasell
[1b6a1b7] Migrate sign out confirmation drawer to harmony (#9320) Reed
[7c8a654] [PAY-3254] Fix edit remix (#9322) Dylan Jeffers
[9bd24c8] [C-4885] [C-4888] [C-4889] [C-4882] [C-4883] Advanced search UI fixes pt 3 (#9317) Sebastian Klingler
[619da11] Fix "date required" error when selecting date (#9315) Dylan Jeffers
[c29f8f8] [PAY-3277] Show release date for all public tracks/collections (#9313) Reed
[885479a] Update users endpoints: round 1 (#9166) Randy Schott
[8618e3c] PAY-3280 Fix gated access display (#9311) Marcus Pasell
[69e76c7] [PAY-3276] No scheduled playlists (#9312) Dylan Jeffers
[91197d4] [PAY-3262] Fix edit new playlist (#9309) Dylan Jeffers
[1c61e0b] Update dn models (#9291) Randy Schott
[cf20265] [PAY-3260] Use 'Today' for matching release dates (#9292) Andrew Mendelsohn
[3290d1e] [PAY-3258] BoxedTextField can error before form submission (#9305) Saliou Diallo
[1dd131f] [PAY-3248][PAY-3256][PAY-3234] Fix misc android issues (#9307) Raymond Jacobson
[782e9d9] Premium extras updates (#9306) Dylan Jeffers
[61cc53a] Small FilterButton hover style tweak (#9303) Sebastian Klingler
[f7cf7d1] [QA-1448] Fix user badge spacing (#9302) Kyle Shanks
[5af538a] [C-4868] BPM validation (#9295) Sebastian Klingler
[22ca755] [C-4854] Add Premium Extras label (#9294) Dylan Jeffers
[b66ca17] [PAY-3261] Update remix settings copy (#9299) Raymond Jacobson
[f713455] [PAY-3236][PAY-3242][PAY-3259] Fix play button in tracks table (#9288) Saliou Diallo
[d87357e] [PAY-3240] Prevent wrong users from seeing /edit pages (#9298) Raymond Jacobson
[8b92b23] PAY-3233 Disable reset on select field for AM/PM (#9296) Marcus Pasell
[3a63fbb] [PAY-3257] Default prices for premium albums/tracks (#9293) Andrew Mendelsohn
[7d41d87] [C-4836] Adjust FilterButton active states (#9289) Sebastian Klingler
[f680c81] [QA-1473] Fix duplicate purchase button in TracksTable row (#9284) Sebastian Klingler
[97bf97d] Fix use-revert-on-cancel (#9286) Dylan Jeffers
[2b9b811] Bump mobile to 109 (#9283) Dylan Jeffers
[68ebca7] Update copy for preview length (#9280) Sebastian Klingler
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants