mirror of
https://github.com/penpot/penpot.git
synced 2025-01-09 16:30:37 -05:00
146 lines
3.8 KiB
Clojure
146 lines
3.8 KiB
Clojure
(ns uxbox.ui.dashboard
|
|
(:require [sablono.core :as html :refer-macros [html]]
|
|
[rum.core :as rum]
|
|
[cuerdas.core :as str]
|
|
[uxbox.rstore :as rs]
|
|
[uxbox.ui.icons :as i]
|
|
[uxbox.ui.mixins :as mx]
|
|
[uxbox.ui.dom :as dom]
|
|
[uxbox.ui.util :as util]
|
|
[uxbox.data.dashboard :as dd]
|
|
[uxbox.ui.library-bar :as ui.library-bar]
|
|
[uxbox.ui.dashboard.header :refer (header)]
|
|
[uxbox.ui.dashboard.projects :as projects]
|
|
[uxbox.ui.dashboard.elements :as elements]
|
|
[uxbox.ui.dashboard.icons :as icons]
|
|
[uxbox.ui.dashboard.colors :as colors]
|
|
))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
;; Page: projects
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(defn projects-page-render
|
|
[own]
|
|
(html
|
|
[:main.dashboard-main
|
|
(header)
|
|
[:section.dashboard-content
|
|
(projects/menu)
|
|
(projects/grid)]]))
|
|
|
|
(defn projects-page-will-mount
|
|
[own]
|
|
(rs/emit! (dd/initialize :dashboard/projects))
|
|
own)
|
|
|
|
(defn projects-page-transfer-state
|
|
[old-state state]
|
|
(rs/emit! (dd/initialize :dashboard/projects))
|
|
state)
|
|
|
|
(def ^:static projects-page
|
|
(util/component
|
|
{:render projects-page-render
|
|
:will-mount projects-page-will-mount
|
|
:transfer-state projects-page-transfer-state
|
|
:name "projects-page"
|
|
:mixins [rum/static]}))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
;; Page: elements
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(defn elements-page-render
|
|
[own]
|
|
(html
|
|
[:main.dashboard-main
|
|
(header)
|
|
[:section.dashboard-content
|
|
(elements/menu)
|
|
(ui.library-bar/library-bar)
|
|
[:section.dashboard-grid.library
|
|
(elements/page-title)
|
|
(elements/grid)]]]))
|
|
|
|
(defn elements-page-will-mount
|
|
[own]
|
|
(rs/emit! (dd/initialize :dashboard/elements))
|
|
own)
|
|
|
|
(defn elements-page-transfer-state
|
|
[old-state state]
|
|
(rs/emit! (dd/initialize :dashboard/elements))
|
|
state)
|
|
|
|
(def ^:static elements-page
|
|
(util/component
|
|
{:render elements-page-render
|
|
:will-mount elements-page-will-mount
|
|
:transfer-state elements-page-transfer-state
|
|
:name "elements-page"
|
|
:mixins [mx/static]}))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
;; Page: icons
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(defn icons-page-render
|
|
[own]
|
|
(html
|
|
[:main.dashboard-main
|
|
(header)
|
|
[:section.dashboard-content
|
|
(icons/menu)
|
|
(icons/nav)
|
|
(icons/grid)]]))
|
|
|
|
(defn icons-page-will-mount
|
|
[own]
|
|
(rs/emit! (dd/initialize :dashboard/icons))
|
|
own)
|
|
|
|
(defn icons-page-transfer-state
|
|
[old-state state]
|
|
(rs/emit! (dd/initialize :dashboard/icons))
|
|
state)
|
|
|
|
(def ^:static icons-page
|
|
(util/component
|
|
{:render icons-page-render
|
|
:will-mount icons-page-will-mount
|
|
:transfer-state icons-page-transfer-state
|
|
:name "icons-page"
|
|
:mixins [mx/static]}))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
;; Page: colors
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(defn colors-page-render
|
|
[own]
|
|
(html
|
|
[:main.dashboard-main
|
|
(header)
|
|
[:section.dashboard-content
|
|
(colors/menu)
|
|
(colors/nav)
|
|
(colors/grid)]]))
|
|
|
|
(defn colors-page-will-mount
|
|
[own]
|
|
(rs/emit! (dd/initialize :dashboard/colors))
|
|
own)
|
|
|
|
(defn colors-page-transfer-state
|
|
[old-state state]
|
|
(rs/emit! (dd/initialize :dashboard/colors))
|
|
state)
|
|
|
|
(def ^:static colors-page
|
|
(util/component
|
|
{:render colors-page-render
|
|
:will-mount colors-page-will-mount
|
|
:transfer-state colors-page-transfer-state
|
|
:name "colors"
|
|
:mixins [mx/static]}))
|