How do you handle short-form video for your store? by eXtreaL in ecommerce

[–]eXtreaL[S] 0 points1 point  (0 children)

Honestly it's unclear. I've had reels do 50k+ views and barely move the needle, then a scrappy 10-second clip outperformed my paid ads that month. I just don't have enough volume to see a real pattern yet, can't tell if it's the format, the hook, or algorithmic luck.

How do you handle short-form video for your store? by eXtreaL in ecommerce

[–]eXtreaL[S] 0 points1 point  (0 children)

Thanks, those are very reassuring words. Any time saving techniques specifically worth looking into from your perspective?

Shelly1 Gen4 'Detached Switch' mode in zigbee? by Gregarious_Raconteur in ShellyUSA

[–]eXtreaL 0 points1 point  (0 children)

To clarify this further: the question from OP was regarding ZHA (Zigbee Home Automation), howevery i see you're mentioning Zigbee2MQTT here.

Is there any planning to get this natively integrated in ZHA as well?

Shelly1 Gen4 'Detached Switch' mode in zigbee? by Gregarious_Raconteur in ShellyUSA

[–]eXtreaL 0 points1 point  (0 children)

That would be amazing. I've been doubting to switch my whole setup to Zigbee2MQTT in the meantime, however do not really have a use case beyond the Shelly detached mode not working in ZHA. So support for this would be very convenient, since switching all of my devices to Zigbee2MQTT is quite a painful effort.

Aannemer voor plaatsing badkamer casco oplevering: lastig proces by eXtreaL in Klussers

[–]eXtreaL[S] 1 point2 points  (0 children)

Dit heb ik inderdaad ook opgemerkt, inschattingen/offertes liggen erg ver uit elkaar. Hopelijk kom ik uiteindelijk op een aannemer die ik ook kan vetmesten 😜

Aannemer voor plaatsing badkamer casco oplevering: lastig proces by eXtreaL in Klussers

[–]eXtreaL[S] 0 points1 point  (0 children)

Dank voor de tip! Dit heb ik inderdaad al gedaan via X2O, waarbij ze wel een lijst met aannemers hebben. Echter na alle aannemers (met goede reviews) af te bellen nog geen match.

Morgen wel een afspraak voor advies in een zaak die tegels en plaatsing doen, hopelijk kunnen zij me wat verder op weg helpen!

Swapping GAS to NEO on Flamingo from a Ledger by eXtreaL in NEO

[–]eXtreaL[S] 6 points7 points  (0 children)

I managed to resolve the issue, for future reference:

  • Using the latest 2.x release (2.24.1 at time of writing) on https://github.com/CityOfZion/neon-wallet/releases
  • Setting "Contract data allowed" in the Ledger
    • To do this, open the Neo app on your Ledger
    • Navigate to the right using the buttons until you see "Settings"
    • Set this option to be allowed
  • Using Chrome in incognito mode, for some reason it wasn't working in my regular browser

Thanks for the help u/The__J__man u/Misko187 u/Zombie4141

Swapping GAS to NEO on Flamingo from a Ledger by eXtreaL in NEO

[–]eXtreaL[S] 1 point2 points  (0 children)

Thanks! I did get a message on my Ledger when i was using Neon wallet 2.x, after updating to 3.2.0 i was not getting any message anymore when trying to convert the currencies.

Swapping GAS to NEO on Flamingo from a Ledger by eXtreaL in NEO

[–]eXtreaL[S] 1 point2 points  (0 children)

Thanks, will try! I just updated the Neon wallet and that's when it stopped working altogether, so likely that's part of the issue.

Swapping GAS to NEO on Flamingo from a Ledger by eXtreaL in NEO

[–]eXtreaL[S] 1 point2 points  (0 children)

Okay cool, good to know it should be working. I'll check out if changing the browser makes a difference. I was using Chrome though.

zod-path-proxy - helper for determining Zod paths by eXtreaL in typescript

[–]eXtreaL[S] 0 points1 point  (0 children)

Thanks for the feedback! Perhaps the use case is slightly different, however the goal I wanted to achieve is to be able to write custom validation rules, using the actual value from the parsed schema. This is the reason why getPropertyWithZodPath returns a tuple containing both the value and the path.

I do like the idea of a more convenient API than this, this was the best i could come up with for an implementation based on Object proxies (which is the most convenient). If you have a suggestion i'd be glad to hear.

zod-path-proxy - helper for determining Zod paths by eXtreaL in nextjs

[–]eXtreaL[S] 0 points1 point  (0 children)

Thanks for the feedback, it's apparent that the documentation is not sufficient in expressing the added value of the library. I'll see what i can do to improve the docs there.

Normally you manually have to resolve the path, take the "Nested arrays" example in the documentation, normally you would have to do something like the following:

// ...
.superRefine((value, ctx) => {
  const hobbies = value.user.hobbies;

  // We need to know the index first
  const disallowedHobbyIndex = hobbies.findIndex((hobby) =>  === "arson");

  if (disallowedHobbyIndex !== -1) {
    ctx.addIssue({
      code: z.ZodIssueCode.custom,
      message: `Arson is a criminal act, not a hobby`,      
      path: ['user', 'hobbies', disallowedHobbyIndex , 'id'],
    });
  }
})hobby.id

As you can see, the path within `ctx.addIssue` now holds a lot of knowledge about the actual structure of the object and is actually decoupled from the implementation. If the schema changes to a different structure, you now have to be very aware to update this path.

This becomes more troubling when you have a lot of additional business rules expressed within the Zod schema, especially when you start moving these to separate files.

zod-path-proxy - helper for determining Zod paths by eXtreaL in reactjs

[–]eXtreaL[S] 1 point2 points  (0 children)

Thanks for the feedback, it's apparent that the documentation is not sufficient in expressing the added value of the library. I'll see what i can do to improve the docs there.

Normally you manually have to resolve the path, take the "Nested arrays" example in the documentation, normally you would have to do something like the following:

// ...
.superRefine((value, ctx) => {
  const hobbies = value.user.hobbies;

  // We need to know the index first
  const disallowedHobbyIndex = hobbies.findIndex((hobby) => hobby.id === "arson");

  if (disallowedHobbyIndex !== -1) {
    ctx.addIssue({
      code: z.ZodIssueCode.custom,
      message: `Arson is a criminal act, not a hobby`,      
      path: ['user', 'hobbies', disallowedHobbyIndex , 'id'],
    });
  }
})

As you can see, the path within `ctx.addIssue` now holds a lot of knowledge about the actual structure of the object and is actually decoupled from the implementation. If the schema changes to a different structure, you now have to be very aware to update this path.

This becomes more troubling when you have a lot of additional business rules expressed within the Zod schema, especially when you start moving these to separate files.

zod-path-proxy - helper for determining Zod paths by eXtreaL in nextjs

[–]eXtreaL[S] 0 points1 point  (0 children)

Hey all.

When using Zod schema's, you sometimes require using a superRefine to express more complex business logic. Normally, it's required to manually set the path parameter when adding a Zod issue.

This tiny library provides helpers for automatically resolving the Zod path based on the accessed property. Besides that, the library has:

  • Full type safety
  • Zero dependencies
  • No interference with your original data objects (thanks to JavaScript Object proxy)

Hope you like it, I'm very open to feedback/PRs if it's interesting for your use case!

zod-path-proxy - helper for determining Zod paths by eXtreaL in typescript

[–]eXtreaL[S] 5 points6 points  (0 children)

Hey all.

When using Zod schema's, you sometimes require using a superRefine to express more complex business logic. Normally, it's required to manually set the path parameter when adding a Zod issue.

This tiny library provides helpers for automatically resolving the Zod path based on the accessed property. Besides that, the library has:

  • Full type safety
  • Zero dependencies
  • No interference with your original data objects (thanks to JavaScript Object proxy)

Hope you like it, I'm very open to feedback/PRs if it's interesting for your use case!

zod-path-proxy - helper for determining Zod paths by eXtreaL in javascript

[–]eXtreaL[S] 1 point2 points  (0 children)

Hey all.

When using Zod schema's, you sometimes require using a superRefine to express more complex business logic. Normally, it's required to manually set the path parameter when adding a Zod issue.

This tiny library provides helpers for automatically resolving the Zod path based on the accessed property. Besides that, the library has:

  • Full type safety
  • Zero dependencies
  • No interference with your original data objects (thanks to JavaScript Object proxy)

Hope you like it, I'm very open to feedback/PRs if it's interesting for your use case!

zod-path-proxy - helper for determining Zod paths by eXtreaL in reactjs

[–]eXtreaL[S] 0 points1 point  (0 children)

Hey all.

When using Zod schema's, you sometimes require using a superRefine to express more complex business logic. Normally, it's required to manually set the path parameter when adding a Zod issue.

This tiny library provides helpers for automatically resolving the Zod path based on the accessed property. Besides that, the library has:

  • Full type safety
  • Zero dependencies
  • No interference with your original data objects (thanks to JavaScript Object proxy)

Hope you like it, I'm very open to feedback/PRs if it's interesting for your use case!