Toolverse
Wszystkie skille

jb-terminal-wrapper

autor: openclaw

Rozszerz funkcjonalność terminala płatności o dynamiczne podziały i operacje atomowe

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Kategoria
Backend

O skillu

Umożliwia budowanie zaawansowanych przepływów płatności poprzez opakowanie JBMultiTerminal. Zastosuj ten wzorzec, gdy potrzebujesz dynamicznych podziałów określonych w momencie płatności, przechwycenia i przekierowania tokenów, lub połączenia wielu operacji w jedną transakcję. Rozwiązanie obejmuje implementację interfejsu IJBTerminal, wzorzec _acceptFunds oraz manipulację beneficjentem dla przepływów płatności i wypłat. Kluczowa koncepcja: wrappery są addytywne, nie restrykcyjne.

Jak używać

  1. Sklonuj repozytorium openclaw/skills i przejdź do katalogu skills/mejango/juicy/jb-terminal-wrapper.

  2. Zapoznaj się z architekturą: utwórz kontrakt implementujący interfejs IJBTerminal, który opakowuje JBMultiTerminal. Kontrakt powinien zawierać referencje do MULTI_TERMINAL i CONTROLLER jako zmienne immutable.

  3. Zaimplementuj funkcję pay() w swoim wrapperie, która przyjmuje parametry: projectId, token, oraz kwotę. Użyj wspólnego helpera _acceptFunds (wzorzec z JBSwapTerminalRegistry) do obsługi zarówno ETH jak i tokenów ERC20.

  4. Dodaj logikę dla swoich przypadków użycia: dynamiczne podziały w momencie płatności, przechwycenie tokenów przed dostarczeniem, lub połączenie operacji płatności z dystrybucją w jedną transakcję atomową.

  5. Pamiętaj, że wrapper jest warstwą addytywną — rozszerza funkcjonalność bez ograniczania dostępu permissionless. Manipulacja beneficjentem powinna działać zarówno dla przepływów płatności jak i wypłat.

  6. Przetestuj wrapper z rzeczywistym projektem revnet, szczególnie scenariusze gdzie ruleset data hooks nie mogą być modyfikowane bezpośrednio.

Podobne skille