-
Q-Shop v1.3.0
Stablereleased this
2025-10-23 22:57:28 +00:00 | 0 commits to main since this releaseQ-Shop v1.3.0 — Release Notes
Release date: 2025-10-23
Overview
This minor release focuses on shipping clarity. We’ve introduced a hierarchical shipping selector, surfaced those destinations throughout the UI, and added a new “Sort by Location” option for the shop list. Legacy shops remain compatible, but owners are encouraged to migrate to the structured format for better visibility. We also fixed a navigation annoyance where using the back button forced a full reload and second authentication.
Highlights
Location-aware ship-to data
shipsTonow stores a list of canonical identifiers representing regions, countries, or U.S. states. The selector lets owners toggle entire continents or drill down to individual destinations.- A new optional “Shipping Info” text field captures amplifying details (delivery partners, exclusions, digital-only caveats, etc.).
- Legacy string-based
shipsTovalues are preserved. They render inside the Shipping Info panel and do not populate the structured checklist until the owner edits the shop. - We provide default grouping for the public shop list: legacy shops appear under “See shipping info” so users still know to read the notes.
Sort shops by shipping destination
- The storefront now offers “Sort by Location” alongside the existing “Recently Updated/Created” filters.
- Shops are grouped by resolved labels (e.g., “Europe”, “Canada”, “California”) with collapsible sections. Portions of the tree can be collapsed/expanded per user preference.
- Structured data drives grouping; legacy string entries are skipped from the primary locations list to avoid ambiguous labels.
Navigation polish
- The browser’s back button now returns you to the prior screen without forcing a full reload. This avoids the extra authentication prompt that previously appeared when navigating back from detail pages.
Migration and compatibility
- No schema change is required for existing data; legacy strings remain valid and migrate automatically once owners edit their shop.
- Structured ids are normalised, so search and future filters can rely on consistent keys.
- Encourage owners to update their shipping selections. Structured data makes shops more discoverable and signals current maintenance to customers.
File touchpoints
- Core logic:
src/constants/shippingRegions.ts,src/components/common/ShippingRegionsSelect.tsx,src/wrappers/GlobalWrapper.tsx. - UI:
src/components/modals/CreateStoreModal.tsx,src/components/modals/EditStoreModal.tsx,src/pages/StoreList/StoreList.tsx,src/pages/Store/StoreDetails/StoreDetails.tsx,src/pages/Store/Store/Store.tsx. - Utilities & state:
src/state/features/{storeSlice,globalSlice}.ts,src/hooks/useGlobalSearch.ts,src/utils/checkStructure.ts.
Testing notes
- Verify that editing a shop with the new selector saves an array of ids and displays the summary and shipping info correctly.
- Confirm that a legacy shop (string
shipsTo) shows the note under “Shipping Info” and is omitted from the location grouping. - Exercise the back button across shop detail pages to confirm it no longer triggers a reload/auth cycle.
Thanks to everyone helping test the new shipping workflow—this lays the groundwork for richer filtering in upcoming releases.
Downloads
-
Q-Shop v1.2.2
Stablereleased this
2025-09-25 04:18:57 +00:00 | 5 commits to main since this releaseQ‑Shop v1.2.2 — Release Notes
Release date: 2025-09-22
Summary
Emergency recovery release for shop owners who lost their product listings when a datacontainer was republished empty. The “Recreate Shop Data” action now rebuilds the datacontainer from your published catalogues instead of starting from scratch.
Changes
- Repair datacontainers from catalogues
- The advanced recovery button now searches for every
q-store-catalogue-*resource owned by the shop and hydrates it before republishing the datacontainer. - Products recovered from catalogues keep their created timestamp, category, status, and QORT price.
- Soft-deleted catalogue entries are ignored so they do not reappear.
- The advanced recovery button now searches for every
- Owner feedback
- Successful rebuilds report how many products were recovered.
- If no catalogue products are found the owner receives a warning, but the datacontainer is republished to restore structure.
- Safety checks
- Duplicate catalogue identifiers are skipped.
- Missing store identifiers now surface an explicit error instead of silently publishing an empty map.
Notes
- Scope: Changes are limited to
src/components/modals/EditStoreModal.tsx. - No schema changes: Catalogue and product resource formats are unchanged; the datacontainer still matches previous structure.
- Testing: Validate by clearing the datacontainer on a dev store, leaving catalogue resources intact, then using “Recreate Shop Data” to restore products.
Downloads
- Repair datacontainers from catalogues
-
Q-Shop v1.2.1
Stablereleased this
2025-09-15 16:23:10 +00:00 | 6 commits to main since this releaseQ‑Shop v1.2.1 — Release Notes
Release date: 2025‑09‑15
Summary
This release focuses on store owner productivity and faster navigation. Shop owners get a more capable Products table with sortable columns and a quick Delete action, and shoppers get a new Recently Visited section on the Store List to jump back into shops quickly.
Changes
- Store management — Products table
- New: Product Type and Category columns.
- New: Click any column header to sort ascending/descending.
- New: Delete Product button for quick removals.
- Includes appropriate confirmation and immediate UI feedback.
- Store list — Recently Visited
- New: Collapsible Recently Visited section appears above the main list.
- New: Shows up to two rows (adapts to screen size: up to 8 on large screens).
- New: Remembers expand/collapse state across sessions.
- Behavior: When expanded, loads these shops first; when collapsed, it does not load until you expand it.
Notes
- Persistence: Recently Visited uses localStorage in the browser and stores only
{ owner, id, visitedAt }per shop. You can clear it by clearing site storage in your browser. - Backward compatible: No data migrations or configuration changes are required.
- Build:
npm ci && npm run build— output is written todist/.
Developer hints
- Recently Visited keys
- List:
recentlyVisitedStores(array of{ owner, id, visitedAt }, capped at 50). - UI state:
recentlyVisitedExpanded(string"true"|"false").
- List:
- UI components involved
- Store list view:
src/pages/StoreList/StoreList.tsx. - Store visit hook-in:
src/pages/Store/Store/Store.tsxupdates the recent list.
- Store list view:
Downloads
- Store management — Products table
-
Q-Shop v1.2.0
Stablereleased this
2025-09-13 15:15:51 +00:00 | 10 commits to main since this releaseQ‑Shop v1.2.0 — Release Notes
Release date: 2025‑09‑13
Summary
Quality‑of‑life improvements focused on finding content faster and navigating large pages more easily. Adds search for shops and items, richer sorting, visual loading progress, and clearer review context.
Changes
- Search
- New: Search shops on the Store List page by name/description.
- New: Search items within a store by title/description.
- Sorting
- New: Sort by Recently Updated or by Date Created (Newest/Oldest) where item grids are shown.
- Updated sorts persist while navigating within the same view.
- Navigation
- New: Scroll‑to‑top button appears after you scroll down and returns you to the top with one click.
- Feedback
- New: Loading progress indicator for data‑heavy views to make waits more transparent.
- Reviews
- Improved: Review lists show clearer context (which product/shop is being reviewed) to avoid confusion.
Notes
- Backward compatible: no data migrations or config changes required.
- Build:
npm ci && npm run build. Output indist/.
Downloads
- Search
-
Q-Shop v1.1.2
Stablereleased this
2025-08-23 19:19:04 +00:00 | 19 commits to main since this releaseQ‑Shop v1.1.2 — Release Notes
Release date: 2025‑08‑23
Summary
Adds a new Service product type and full support for free (0‑price) items, including end‑to‑end checkout without sending a payment transaction.
Changes
- Product types
- New: Service — intended for paid services (no goods delivered).
- Checkout logic treats Service like Digital (no shipping section when the cart contains only Digital/Service items).
- Free/0‑price items
- Product creation/editing accepts 0 as a valid price (QORT and supported coins).
- Cart/Checkout displays 0 amounts and correctly computes totals.
- When the order total is 0, payment is skipped; the order is still created and a Q‑Mail notification is sent to the seller.
- Validation updated to allow 0; negative prices remain blocked.
- Minor UI/logic tweaks
- Total and per‑item price UI now renders when the amount is 0.
Notes
- Backward compatible: existing products are unaffected.
- Build:
npm ci && npm run build. Output indist/.
Downloads
- Product types
-
Q-Shop v1.1.1
StableAll checks were successfulbuild-and-zip / build (push) Successful in 1m49sreleased this
2025-08-23 10:40:37 +00:00 | 21 commits to main since this releaseQ‑Shop v1.1.1 — Release Notes
Release date: 2025‑08‑23
Summary
Minor UI/UX improvements and a fix to price entry for all supported coins.
Changes
- Product pricing form
- Shows price fields for every coin your shop supports (hides others).
- Pre-fills existing prices when editing a product.
- Product card price display
- Uses PNG icons for all coins.
- For non‑QORT selections, shows:
[COIN icon] amount [QORT icon] qortEquivalent. - QORT amounts rounded to 2 decimals; no letter tickers.
- Exchange rate card (sidebar)
- Removed background panel to prevent text overflow.
- Icon-based display with both directions:
[QORT icon] 1 = X [COIN icon][COIN icon] 1 = Y [QORT icon]
- Compact formatting (>=1 → 4 decimals; <1 → 4 significant digits).
- Removed the arrow/icons row below the subtitle.
Notes
- This is a patch over v1.1.0 (which introduced BTC/LTC/DOGE/DGB/RVN support, Edit Shop improvements, and initial pricing UX updates).
- Build:
npm ci && npm run build. Artifacts indist/.
Downloads
- Product pricing form
-
Q-Shop v1.1.0
StableAll checks were successfulbuild-and-zip / build (push) Successful in 1m12sreleased this
2025-08-23 10:03:35 +00:00 | 22 commits to main since this releaseQ‑Shop v1.1.0 — Release Notes
Release date: 2025‑08‑23
Highlights
- New coin support: BTC, LTC, DOGE, DGB, RVN in addition to QORT (native) and ARRR.
- Improved store editing experience and safety controls.
- Clearer pricing UX with dynamic exchange card and date sorting restored.
What’s New
- Supported coins
- Added BTC, LTC, DOGE, DGB, RVN across the app: store setup, badges, filtering, pricing, and icons.
- Centralized PNG icon mapping for all coins in
src/constants/coin-icons.ts.
- Edit Store modal
- Cancel reliably closes the modal.
- Advanced Settings restored with a “Recreate Shop Data” action:
- Publishes a fresh empty Data Container (DOCUMENT) to QDN for the current shop.
- Resets cached product lists to avoid UI inconsistencies.
- Confirmation modal with warnings to prevent accidental use.
- Supported Coins dropdown now uses PNG icons for all coins.
- Local draft preservation: unsaved edits persist while the modal is open (localStorage) and can be cleared.
- Sidebar filters (Store page)
- Prices In: de‑duplicated header; single clear section.
- Exchange Rate card:
- Hidden when viewing prices in QORT.
- Shows dynamic coin icon for the selected coin.
- Displays both directions:
1 QORT = X COINand1 COIN = Y QORT.
- Date Product Added: restored “Most Recent” and “Oldest” sort options.
Improvements
- Pricing lookup now integrates per‑coin keys via
getPriceHint()with graceful fallback to QORT when rate is unavailable. - Safer store edit flow with explicit error notifications and loading indicators.
Fixes
- TypeScript/JSX issues in
EditStoreModal.tsxcausing build failures. - Inconsistent close behavior for the edit modal.
- Mixed icon sources (SVG vs. PNG) resolved for consistency.
Developer Notes
- Build:
npm ci && npm run build(Node LTS). Output indist/. - Icons: coin assets located under
src/assets/img/and referenced viacoinPng(). - Recreate Shop Data publishes
identifier: <storeId>-datacontainerto QDN with an emptyproductsmap. Use only for recovery.
Upgrade Guide
- No config changes required.
- After updating, shop owners can edit their store to add newly supported coins and addresses. Pricing UX updates apply automatically.
Known Considerations
- Exchange rates rely on recent trade portal data; when unavailable, the app reverts to QORT pricing and notifies the user.
Downloads
forked from Qortal-Forker/q-shop