every ssr page is tailwindified.

This commit is contained in:
Bryce
2023-06-01 12:00:30 -07:00
parent 3540346fc8
commit 1b044ff5cd
12 changed files with 72 additions and 44 deletions

2
.gitignore vendored
View File

@@ -8,7 +8,7 @@ pom.xml.asc
*.class *.class
/.lein-* /.lein-*
/.nrepl-port /.nrepl-port
/resources/public/js/compiled resources/public/js/compiled
*.log *.log
examples/ examples/
\#*\# \#*\#

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -1570,6 +1570,18 @@ input:checked + .toggle-bg {
margin-bottom: calc(1.5rem * var(--tw-space-y-reverse)); margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
} }
.space-y-8 > :not([hidden]) ~ :not([hidden]) {
--tw-space-y-reverse: 0;
margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
margin-bottom: calc(2rem * var(--tw-space-y-reverse));
}
.space-y-4 > :not([hidden]) ~ :not([hidden]) {
--tw-space-y-reverse: 0;
margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}
.divide-y > :not([hidden]) ~ :not([hidden]) { .divide-y > :not([hidden]) ~ :not([hidden]) {
--tw-divide-y-reverse: 0; --tw-divide-y-reverse: 0;
border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse))); border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
@@ -1786,6 +1798,11 @@ input:checked + .toggle-bg {
background-color: rgb(255 205 205 / var(--tw-bg-opacity)); background-color: rgb(255 205 205 / var(--tw-bg-opacity));
} }
.bg-blue-300 {
--tw-bg-opacity: 1;
background-color: rgb(102 196 242 / var(--tw-bg-opacity));
}
.bg-opacity-50 { .bg-opacity-50 {
--tw-bg-opacity: 0.5; --tw-bg-opacity: 0.5;
} }

View File

@@ -18,7 +18,8 @@
[com.brunobonacci.mulog :as mu] [com.brunobonacci.mulog :as mu]
[datomic.api :as dc] [datomic.api :as dc]
[hiccup2.core :as hiccup] [hiccup2.core :as hiccup]
[amazonica.aws.s3 :as s3])) [amazonica.aws.s3 :as s3]
[auto-ap.ssr.components :as com]))
(defn fmt-amount [a] (defn fmt-amount [a]
(with-precision 2 (with-precision 2
@@ -27,18 +28,12 @@
(.setScale 2 java.math.RoundingMode/HALF_UP) (.setScale 2 java.math.RoundingMode/HALF_UP)
(double)))) (double))))
(defn rows->maps [rows] (defn rows->maps [rows]
(let [[headers & rows] rows] (let [[headers & rows] rows]
(for [r rows] (for [r rows]
(into {} (into {}
(map vector headers r))))) (map vector headers r)))))
(defn map->sales-order [r clients] (defn map->sales-order [r clients]
(let [order-number (get r "Order Number") (let [order-number (get r "Order Number")
event-date (get r "Event Date") event-date (get r "Event Date")
@@ -136,30 +131,29 @@
(stream->sales-orders s))) (stream->sales-orders s)))
(defn page* [] (defn page* []
[:div [:div.mt-4
[:h1.title "EZCater XLS Import"] (com/card {}
[:div.card.block {:style {:width "500px"}} [:div.px-4.py-3.space-y-4.flex.flex-col
[:div.card-content [:h1.text-2xl.mb-3.font-bold "EZCater XLS Import"]
"Please go to " [:p.text-sm.italic
[:a {:href "https://www.ezcater.com/ez_manage/reports/new" :target "_blank"} "EZCater's report page"] "Please go to "
" to generate a new report. Then drop it below."]] (com/link {:href "https://www.ezcater.com/ez_manage/reports/new" :target "_blank"} "EZCater's report page")
[:div#page-notification.notification.block {:style {:display "none"}}] " to generate a new report. Then drop it below."]
[:div.card.block [:div#page-notification.notification.block {:style {:display "none"}}]
[:div.card-content [:form.bg-blue-300 {:action (bidi/path-for ssr-routes/only-routes
[:form {:action (bidi/path-for ssr-routes/only-routes :admin-ezcater-xls)
:admin-ezcater-xls) :method "POST"
:method "POST" :class "dropzone"
:class "dropzone" :id "ezcater"}]
:id "ezcater"}]]] [:script
[:script (hiccup/raw
(hiccup/raw "
"
Dropzone.options.ezcater = { Dropzone.options.ezcater = {
success: function (file, response) { success: function (file, response) {
document.getElementById(\"page-notification\").innerHTML = response; document.getElementById(\"page-notification\").innerHTML = response;
document.getElementById(\"page-notification\").style[\"display\"] = \"block\"; document.getElementById(\"page-notification\").style[\"display\"] = \"block\";
} }
}")]]) }")]])])
(defn upload-xls [{:keys [identity] :as request}] (defn upload-xls [{:keys [identity] :as request}]
@@ -195,8 +189,23 @@
(if (= :post request-method) (if (= :post request-method)
(upload-xls request) (upload-xls request)
(base-page (base-page
request request
(page*) (com/page {:nav (com/company-aside-nav)
:active-client (:client (:session request))
(admin-side-bar matched-route)))) :identity (:identity request)
:app-params {:hx-get (bidi/path-for ssr-routes/only-routes
:admin-ezcater-xls)
:hx-trigger "clientSelected from:body"
:hx-select "#app-contents"
:hx-swap "outerHTML swap:300ms"}}
(com/breadcrumbs {}
[:a {:href (bidi/path-for ssr-routes/only-routes
:admin)}
"Admin"]
[:a {:href (bidi/path-for ssr-routes/only-routes
:admin-ezcater-xls)}
"EZCater XLS Import"])
(page*))
"EZCater upload")))

View File

@@ -111,8 +111,7 @@
(com/data-grid-card {:id "history-table" (com/data-grid-card {:id "history-table"
:title (format "History for %s: %d" (str/capitalize best-guess-entity) entity-id) :title (format "History for %s: %d" (str/capitalize best-guess-entity) entity-id)
:route :history-table :route :history-table
:start 0 :paginate? false
:per-page (count history)
:total (count history) :total (count history)
:subtitle nil :subtitle nil
:action-buttons nil :action-buttons nil
@@ -188,4 +187,4 @@
[:div#history-table]) [:div#history-table])
[:div#inspector] [:div#inspector]
]) ])
nil))) "History")))

View File

@@ -63,5 +63,5 @@
:company)} :company)}
"My Company"]) "My Company"])
(main-content* {:client (:client (:session request))})) (main-content* {:client (:client (:session request))}))
nil)) "My Company"))

View File

@@ -33,7 +33,8 @@
(update-in c [1 1 :class ] str " flex items-center p-2 pl-11 w-full text-base font-normal text-gray-900 rounded-lg transition duration-75 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700")])]) (update-in c [1 1 :class ] str " flex items-center p-2 pl-11 w-full text-base font-normal text-gray-900 rounded-lg transition duration-75 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700")])])
(defn left-aside- [{:keys [nav page-specific]} & children] (defn left-aside- [{:keys [nav page-specific]} & children]
[:aside {:id "left-nav", :class "fixed top-0 left-0 pt-16 z-20 w-64 h-screen transition-transform -translate-x-full lg:translate-x-0", :aria-labelledby "left-nav" :aria-hidden "true"} [:aside {:id "left-nav", :class "fixed top-0 left-0 pt-16 z-20 w-64 h-screen transition-transform -translate-x-full lg:translate-x-0", :aria-labelledby "left-nav" :aria-hidden "true"
"_" (hiccup/raw "init call initSidebarToggle()")}
[:div {:class "overflow-y-auto py-5 px-3 h-full bg-gray-50 border-r border-gray-200 dark:bg-gray-800 dark:border-gray-700"} [:div {:class "overflow-y-auto py-5 px-3 h-full bg-gray-50 border-r border-gray-200 dark:bg-gray-800 dark:border-gray-700"}
nav nav
@@ -125,6 +126,7 @@
[:use {:width "30", :height "20", :transform "matrix(16 -19.968 19.968 16 256 230.4)", :xlink:href "#a"}]] "中文 (繁體)"]]]]]] [:use {:width "30", :height "20", :transform "matrix(16 -19.968 19.968 16 256 230.4)", :xlink:href "#a"}]] "中文 (繁體)"]]]]]]
[:script {:lang "text/javascript"} [:script {:lang "text/javascript"}
(hiccup/raw " (hiccup/raw "
function initSidebarToggle() {
var $targetEl = document.getElementById('left-nav'); var $targetEl = document.getElementById('left-nav');
var $triggerEl = document.getElementById('left-nav-toggle'); var $triggerEl = document.getElementById('left-nav-toggle');
@@ -140,8 +142,8 @@
} }
}; };
// var collapse = new Collapse($targetEl, $triggerEl, options); var collapse = new Collapse($targetEl, $triggerEl, options);
}
")]]) ")]])
(defn main-aside-nav- [] (defn main-aside-nav- []

View File

@@ -85,7 +85,7 @@
rows)] rows)]
(when (or paginate? (when (or paginate?
(not (nil? paginate?))) (nil? paginate?))
(paginator- {:start start (paginator- {:start start
:end (Math/min (+ start per-page) total) :end (Math/min (+ start per-page) total)
:per-page per-page :per-page per-page

View File

@@ -18,7 +18,7 @@
(def key->handler {:logout auth/logout (def key->handler {:logout auth/logout
:admin-history (wrap-client-redirect-unauthenticated (wrap-secure (wrap-admin admin/history))) :admin-history (wrap-client-redirect-unauthenticated (wrap-secure (wrap-admin admin/history)))
:admin-history-search (wrap-client-redirect-unauthenticated (wrap-secure (wrap-admin admin/history-search))) :admin-history-search (wrap-client-redirect-unauthenticated (wrap-secure (wrap-admin admin/history)))
:admin-history-inspect (wrap-client-redirect-unauthenticated (wrap-secure (wrap-admin admin/inspect))) :admin-history-inspect (wrap-client-redirect-unauthenticated (wrap-secure (wrap-admin admin/inspect)))
:active-client (wrap-client-redirect-unauthenticated (wrap-secure (wrap-admin company-dropdown/active-client))) :active-client (wrap-client-redirect-unauthenticated (wrap-secure (wrap-admin company-dropdown/active-client)))
:company-dropdown-search-results :company-dropdown-search-results

View File

@@ -183,4 +183,4 @@
(table* grid-spec (table* grid-spec
identity identity
(extract-params grid-spec request))) (extract-params grid-spec request)))
nil)) (:title grid-spec)))

View File

@@ -214,4 +214,4 @@
(insight-table* {:selected-client (insight-table* {:selected-client
(-> session :client :db/id) (-> session :client :db/id)
:identity identity})] :identity identity})]
[:div (company-side-bar matched-route)])) "Transaction Insights"))

View File

@@ -11,15 +11,16 @@
{} {}
hiccup))}) hiccup))})
(defn base-page [request contents side-bar-contents] (defn base-page [request contents page-name]
(html-page (html-page
[:html.has-navbar-fixed-top [:html.has-navbar-fixed-top
[:head [:head
[:meta {:charset "utf-8"}] [:meta {:charset "utf-8"}]
[:meta {:http-equiv "X-UA-Compatible", :content "IE=edge"}] [:meta {:http-equiv "X-UA-Compatible", :content "IE=edge"}]
[:meta {:name "viewport", :content "width=device-width, initial-scale=1"}] [:meta {:name "viewport", :content "width=device-width, initial-scale=1"}]
[:title "Integreat"] [:title (str "Integreat | " page-name)]
[:link {:href "/css/font.min.css", :rel "stylesheet"}] [:link {:href "/css/font.min.css", :rel "stylesheet"}]
[:link {:rel "icon" :type "image/png" :href "/favicon.png"}]
[:link {:rel "stylesheet", :href "/css/react-datepicker.min.inc.css"}] [:link {:rel "stylesheet", :href "/css/react-datepicker.min.inc.css"}]
[:link {:rel "stylesheet", :href "/output.css"}] [:link {:rel "stylesheet", :href "/output.css"}]