feat: initial shared library extraction
Contains shared infrastructure for all coop services: - shared/ (factory, urls, user_loader, context, internal_api, jinja_setup) - models/ (User, Order, Calendar, Ticket, Product, Ghost CMS) - db/ (SQLAlchemy async session, base) - suma_browser/app/ (csrf, middleware, errors, authz, redis_cacher, payments, filters, utils) - suma_browser/templates/ (shared base layouts, macros, error pages) - static/ (CSS, JS, fonts, images) - alembic/ (database migrations) - config/ (app-config.yaml) - editor/ (Lexical editor Node.js build) - requirements.txt Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
17
static/labels/_blank.svg
Normal file
17
static/labels/_blank.svg
Normal file
@@ -0,0 +1,17 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 200 200" width="200" height="200" role="img" aria-labelledby="title">
|
||||
<title id="title">Offer ribbon (top-right)</title>
|
||||
|
||||
<!-- Ribbon group: move origin to top-right, then rotate 45° -->
|
||||
<g transform="translate(200 0) rotate(45)">
|
||||
<!-- The stripe -->
|
||||
<rect x="-160" y="50" width="320" height="25" rx="4" fill="#22c55e"/>
|
||||
<!-- Label on the stripe (centered) -->
|
||||
<text x="0" y="65"
|
||||
font-family="system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif"
|
||||
font-size="18" font-weight="800" fill="#ffffff"
|
||||
text-anchor="middle" dominant-baseline="middle" letter-spacing=".15em">
|
||||
NEW
|
||||
</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 734 B |
17
static/labels/new.svg
Normal file
17
static/labels/new.svg
Normal file
@@ -0,0 +1,17 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 200 200" width="200" height="200" role="img" aria-labelledby="title">
|
||||
<title id="title">Offer ribbon (top-right)</title>
|
||||
|
||||
<!-- Ribbon group: move origin to top-right, then rotate 45° -->
|
||||
<g transform=" rotate(-45 0 0)">
|
||||
<!-- The stripe -->
|
||||
<rect x="-160" y="25" width="320" height="25" rx="4" fill="#22c55e"/>
|
||||
<!-- Label on the stripe (centered) -->
|
||||
<text x="0" y="40"
|
||||
font-family="system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif"
|
||||
font-size="18" font-weight="800" fill="#ffffff"
|
||||
text-anchor="middle" dominant-baseline="middle" letter-spacing=".15em">
|
||||
NEW
|
||||
</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 723 B |
19
static/labels/offer.svg
Normal file
19
static/labels/offer.svg
Normal file
@@ -0,0 +1,19 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 200 200" width="200" height="200" role="img" aria-labelledby="title">
|
||||
<title id="title">Offer ribbon</title>
|
||||
|
||||
<!-- Transparent background (nothing drawn) -->
|
||||
|
||||
<!-- Ribbon group rotated -45° around the top-left corner (0,0) -->
|
||||
<g transform="rotate(-45 0 0)">
|
||||
<!-- The stripe itself -->
|
||||
<rect x="-80" y="50" width="260" height="25" rx="4" fill="#ef4444"/>
|
||||
<!-- Centered label on the stripe -->
|
||||
<text x="0" y="65"
|
||||
font-family="system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif"
|
||||
font-size="18" font-weight="800" fill="#ffffff"
|
||||
text-anchor="middle" dominant-baseline="middle" letter-spacing=".15em">
|
||||
OFFER
|
||||
</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 770 B |
Reference in New Issue
Block a user