Commit graph

564 commits

Author SHA1 Message Date
Arc
c7febeb9f5
Merge pull request #156 from BenGWeeks/feature/shipping-zone-ux-improvements
feat: improve shipping zone UX
2025-12-24 03:25:54 +00:00
Ben Weeks
65a6bb3786 fix: correct Ben Arc's GitHub URL
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 16:28:05 +00:00
Ben Weeks
c4f0eb4d91 feat: enhance extension info card with Nostr introduction and resources
- Add Nostrich banner image at top of card
- Change title to "Nostr Market" with intro description
- Add expandable sections: What is Nostr?, Getting Started, For Merchants, For Customers, Contributors
- Add links: Market Client, API Documentation, NIP-15 Specification, GitHub Issues
- Add Ben Weeks to contributors
- Mention NIP-15 interoperability with other marketplaces (Amethyst, Plebeian Market)

Closes #159

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 16:27:01 +00:00
Ben Weeks
0b8ed70350 fix: country list fixes for shipping-zones-list component (#153)
- Remove asterisks from United Kingdom and United States
- Move China to alphabetical position
- Remove "Flat rate" option
- Alphabetize country list

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 13:46:57 +00:00
Ben Weeks
7bfc687a87 revert: remove country list fixes, keep only search/sort (#157)
Country list fixes will come from PR #156 instead.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 13:44:21 +00:00
Ben Weeks
e568d55760 style: move Currency column after Cost column
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 13:40:00 +00:00
Ben Weeks
0e2cad101d feat: add search and sorting to shipping zones table (#157)
- Add search filter input to zones table
- Make all columns sortable with default sort by name
- Fix country list: alphabetize, remove asterisks from UK/US, remove "Flat rate"

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 13:34:43 +00:00
Ben Weeks
284608e73c feat: disable Create Shipping Zone button if no name entered
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 13:07:29 +00:00
Ben Weeks
bcdd001e1b feat: add validation for max 2 decimal places on non-sat currencies
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 13:04:34 +00:00
Ben Weeks
3c16ebb2b7 chore: add CLAUDE.md to gitignore
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 13:03:29 +00:00
Ben Weeks
4dad0a0029 fix: remove extra left padding on cost field
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 12:59:41 +00:00
Ben Weeks
d51a66cd69 feat: move currency dropdown inline with cost field
Layout now shows: [Default shipping cost] [Currency ▼]

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 12:58:00 +00:00
Ben Weeks
dbd64f7faf feat: improve shipping zone UX
- Remove asterisks from UK/US country names (#153)
- Remove unclear "Flat rate" option (#153)
- Alphabetize country list, move China to correct position (#153)
- Rename "Unit" to "Currency" (#154)
- Rename cost label to "Default shipping cost" (#154)
- Add currency suffix to cost field (#154)
- Add hint about per-product shipping costs (#154)
- Add validation for whole number sats (#155)
- Disable submit button when sats validation fails (#155)
- Show error message for invalid sats values (#155)

Closes #153, #154, #155

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 12:53:21 +00:00
Ben Weeks
1f708fff66 style: fix prettier formatting in index.html
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 12:24:35 +00:00
Ben Weeks
bd010ece6b style: fix prettier formatting
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 12:21:59 +00:00
Ben Weeks
0e8a8d3591 fix: line too long in get_orders_for_stall
Extract conditional SQL clause to variable to fix E501 (line > 88 chars)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 12:02:42 +00:00
Ben Weeks
99b3ca6db7 feat: update extension icon with shop storefront design
- Add generate_logo.py script to create icon programmatically
- New shop icon with striped awning and display windows
- Consistent purple color scheme with Nostr Proxy extension
- Update config.json to reference new icon

Closes #150

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 02:24:58 +00:00
Ben Weeks
dba3cf2165 fix: add missing AND in dynamic SQL query for orders (#135)
The get_orders and get_orders_for_stall functions were generating
malformed SQL when filtering by additional parameters like public_key.

Before: WHERE merchant_id = :merchant_id public_key = :public_key
After:  WHERE merchant_id = :merchant_id AND public_key = :public_key

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 18:40:32 +00:00
Ben Weeks
b8c2c99175 chore: remove unused status endpoint and debug logging
- Remove api_get_nostr_status() - frontend calls nostrclient directly
- Remove unused httpx and settings imports
- Remove console.log debug statement

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 14:46:30 +00:00
Ben Weeks
d2755d7232 fix: improve nostrclient status detection and display
- Call nostrclient /relays API directly from frontend for accurate status
- Show correct error messages from API response (body.detail)
- Add orange warning state for no relays configured
- Show relay count when connected (X of Y connected)
- Simplify status logic: 200 = green, no relays = orange, error = red

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:49:33 +00:00
Ben Weeks
9911a03575 feat: add nostrclient status indicator and connection button
- Add /api/v1/status endpoint to check nostrclient availability
- Add color-coded "Connect" button (red/orange/green) based on status
- Show dropdown with connection details (relays count, websocket status)
- Add warning banner when nostrclient extension is not available
- Update info card with description of extension functionality

Closes #132

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 10:15:11 +00:00
Ben Weeks
71f458b9b9 feat: restructure UI with tab-based navigation (#119)
Reorganizes the merchant dashboard into a tab-based layout:
- Tabs: Merchant | Shipping | Stalls | Products | Messages | Orders
- Publish dropdown with NIP-15 options (NIP-99 disabled/coming soon)
- Consistent UI patterns across all tabs:
  - Search/filter/buttons aligned right
  - Actions column on right side of tables
  - Equal-width tabs
- Stalls tab: popup edit dialog, navigation to Products/Orders
- Products tab: filter icon dropdown for stall filtering
- Modular component structure for each tab section
- Fixed product API calls to use correct endpoints

Closes #119

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-21 19:06:28 +00:00
Ben Weeks
697fc1260d fix: respect admin-configured allowed currencies in dropdowns
Use window.g.allowedCurrencies instead of fetching all currencies from
the API, so currency dropdowns only show currencies configured by the
admin in LNbits settings.

Closes #116

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-21 17:47:48 +00:00
Vlad Stan
17d13dbe6b
fix: point multiplication (#115)
Some checks failed
/ release (push) Has been cancelled
/ pullrequest (push) Has been cancelled
v1.1.0
2025-11-13 12:10:40 +02:00
dni ⚡
9c00adbf2d
chore: get rid of secp lib (#114)
* chore: get rid of secp lib

* fixup!
2025-11-04 10:34:24 +01:00
dni ⚡
3a8c16d155
chore: add uv, add ci, fix some issues (#113)
in preparation of removing secp
2025-10-30 10:11:18 +01:00
PatMulligan
499b1f81f1
CHORE: Improve UI (#112)
* Refactor merchant details layout for improved responsiveness and styling in index.html

* Revamp key pair component layout with improved styling and functionality. Added a header with a toggle for showing the private key, enhanced QR code display for both public and private keys, and included copy buttons for better user interaction.

Update key pair component styling and functionality: adjust QR code dimensions, improve key display format with truncation, and refine button margins for enhanced user experience.

Add 'show-buttons' prop to QR code components in key pair template for improved functionality

Update key pair component layout to use 'col-sm-6' for responsive design of QR code sections, enhancing display on smaller screens.

* Enhance direct messages component layout with improved styling and responsiveness. Updated class names for better alignment, added ellipsis for long customer labels, and modified button styles for consistency. Improved select options display with custom templates for better user experience.

* Refactor customer label generation in direct messages component for improved readability. Added checks for undefined customer data, enhanced label formatting with truncation for long descriptions, and adjusted unread message display format.

* make format
2025-09-15 09:48:13 +03:00
PatMulligan
4938491774
FIX: add urlsafe=True (#111) 2025-09-10 15:10:45 +03:00
Vlad Stan
de7fe059b8
V1 (#106)
Some checks failed
/ release (push) Has been cancelled
/ pullrequest (push) Has been cancelled
v1.0.0
2024-11-06 11:50:21 +02:00
rleed
2020bd9838
Changes to deactivate/reactivate products (#89) 2024-11-04 10:59:04 +02:00
PatMulligan
7a3b144a94
pass showKeys as prop to merchant-details child and use emit to toggle (#105)
previously, index and its child compoment merchant-details had their own
booleans and their values were not synched. Using a prop avoids this
problem
2024-10-25 15:19:13 +03:00
Arc
db35538099
Merge pull request #104 from lnbits/arcbtc-patch-1
slight path change
2024-08-11 10:59:10 +01:00
Arc
1278ca367b
slight path change 2024-08-11 10:58:59 +01:00
Arc
6cbdf14e04
Merge pull request #101 from lnbits/advanceddescription
Added advanced description
2024-06-19 17:46:49 +01:00
dni ⚡
3325626777
fix: properly start/stop tasks (#100)
Some checks failed
/ release (push) Has been cancelled
/ pullrequest (push) Has been cancelled
v0.7.1
* fix: properly start/stop tasks

https://github.com/lnbits/lnbits/issues/2411
2024-05-27 12:47:39 +03:00
benarc
7c77f3576a Added advanced description 2024-05-15 11:23:49 +01:00
dni ⚡
49b4ae73c5
chore: rename websocketUpdater (#99)
Some checks failed
/ release (push) Has been cancelled
/ pullrequest (push) Has been cancelled
v0.7.0
* chore: rename `websocketUpdater`
https://github.com/lnbits/lnbits/pull/2377
2024-04-12 12:12:19 +02:00
Vlad Stan
bdf0b77a51
Use private realay enpoint (#97)
Some checks failed
/ release (push) Has been cancelled
/ pullrequest (push) Has been cancelled
v0.6 v0.6.0
* feat: use private ws endpoint

* chore: bump `min_lnbits_version`

* fix: retry logic

* fix: restart logic

* chore: fux log message
2024-01-22 13:50:40 +02:00
Vlad Stan
1fd9da8214
fix: colours (#92) 2023-11-08 15:33:31 +02:00
Vlad Stan
cef709155e fix: long product name in order details 2023-11-06 12:41:53 +02:00
Vlad Stan
4edfc28513 fix: better handling of WS close
Some checks failed
/ release (push) Has been cancelled
/ pullrequest (push) Has been cancelled
v0.5.1
2023-11-01 15:04:10 +02:00
dni ⚡
986d1d7ced
release workflow (#87)
Some checks failed
/ release (push) Has been cancelled
/ pullrequest (push) Has been cancelled
v0.5.0
2023-09-29 09:55:41 +02:00
Tiago Vasconcelos
5e06ffaaa1
allow custom path (#83)
* allow custom path

* fix: update min_lnbits_version to 0.11.0

---------

Co-authored-by: Vlad Stan <stan.v.vlad@gmail.com>
2023-09-26 15:30:49 +03:00
Vlad Stan
0a36bd7d42 fix: receipt on invoice re-issue v0.4.5 2023-09-26 14:32:46 +03:00
Vlad Stan
db24e93039 chore: update market binaries v0.4.4 2023-09-21 17:37:17 +03:00
Vlad Stan
f29e77db7e
Custom shipping cost (#86)
* feat: simple UI for shipping zone per product

* feat: add empty cost

* fix: backwards compatible zones

* feat: finish UI for product shipping cost

* fix: some ui issues

* feat: add per product shipping cost

* feat: show receipt for product

* fix: publish per product shipping cost
2023-09-21 17:29:13 +03:00
Vlad Stan
1a840ac007
feat: refresh merchant from nostr (#85) 2023-09-20 12:06:36 +03:00
Vlad Stan
1de0113ee6 chore: market UI update v0.4.3 2023-09-20 09:17:40 +03:00
Vlad Stan
97ee1c8f49
Fix high load (#84)
* chore: testing

* fix: resubscribe when merchant added/removed

* chore: code clean-up

* fix: temp subscribe when new merchant is added

* fix: new customer profile
2023-09-20 09:17:01 +03:00
Vlad Stan
926bbfa00d chore: update mrket app v0.4.2 2023-09-15 18:30:48 +03:00