aboutsummaryrefslogtreecommitdiffstats
path: root/old-apps/projects/src/app/pages/nav/css
diff options
context:
space:
mode:
Diffstat (limited to 'old-apps/projects/src/app/pages/nav/css')
-rw-r--r--old-apps/projects/src/app/pages/nav/css/1_responsive-sidebar.css179
-rw-r--r--old-apps/projects/src/app/pages/nav/css/2_side-navigation-v4.css213
2 files changed, 392 insertions, 0 deletions
diff --git a/old-apps/projects/src/app/pages/nav/css/1_responsive-sidebar.css b/old-apps/projects/src/app/pages/nav/css/1_responsive-sidebar.css
new file mode 100644
index 0000000..515a9f2
--- /dev/null
+++ b/old-apps/projects/src/app/pages/nav/css/1_responsive-sidebar.css
@@ -0,0 +1,179 @@
+/* --------------------------------
+
+File#: _1_responsive-sidebar
+Title: Responsive Sidebar
+Descr: Responsive sidebar container
+Usage: codyhouse.co/license
+
+-------------------------------- */
+/* mobile version only (--default) 👇 */
+.sidebar:not(.sidebar--static) {
+ position: fixed;
+ top: 0;
+ left: 0;
+ z-index: var(--z-index-fixed-element, 10);
+ width: 100%;
+ height: 100%;
+ visibility: hidden;
+ transition: visibility 0s 0.3s;
+}
+.sidebar:not(.sidebar--static)::after {
+ /* overlay layer */
+ content: "";
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ background-color: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0);
+ transition: background-color 0.3s;
+ z-index: 1;
+}
+.sidebar:not(.sidebar--static) .sidebar__panel {
+ /* content */
+ position: absolute;
+ top: 0;
+ left: 0;
+ z-index: 2;
+ width: 100%;
+ max-width: 380px;
+ height: 100%;
+ overflow: auto;
+ -webkit-overflow-scrolling: touch;
+ background-color: var(--color-bg);
+ -webkit-transform: translateX(-100%);
+ transform: translateX(-100%);
+ transition: box-shadow 0.3s, -webkit-transform 0.3s;
+ transition: box-shadow 0.3s, transform 0.3s;
+ transition: box-shadow 0.3s, transform 0.3s, -webkit-transform 0.3s;
+}
+.sidebar:not(.sidebar--static).sidebar--right-on-mobile .sidebar__panel {
+ left: auto;
+ right: 0;
+ -webkit-transform: translateX(100%);
+ transform: translateX(100%);
+}
+.sidebar:not(.sidebar--static).sidebar--is-visible {
+ visibility: visible;
+ transition: none;
+}
+.sidebar:not(.sidebar--static).sidebar--is-visible::after {
+ background-color: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.85);
+}
+.sidebar:not(.sidebar--static).sidebar--is-visible .sidebar__panel {
+ -webkit-transform: translateX(0);
+ transform: translateX(0);
+ box-shadow: var(--shadow-md);
+}
+
+/* end mobile version */
+.sidebar__header {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ position: -webkit-sticky;
+ position: sticky;
+ top: 0;
+}
+
+.sidebar__close-btn {
+ --size: 32px;
+ width: var(--size);
+ height: var(--size);
+ display: flex;
+ border-radius: 50%;
+ background-color: var(--color-bg-light);
+ box-shadow: var(--inner-glow), var(--shadow-sm);
+ transition: 0.2s;
+ flex-shrink: 0;
+}
+.sidebar__close-btn .icon {
+ display: block;
+ margin: auto;
+}
+.sidebar__close-btn:hover {
+ background-color: var(--color-bg-lighter);
+ box-shadow: var(--inner-glow), var(--shadow-md);
+}
+
+/* desktop version only (--static) 👇 */
+.sidebar--static {
+ flex-shrink: 0;
+ flex-grow: 1;
+}
+.sidebar--static .sidebar__header {
+ display: none;
+}
+
+.sidebar--sticky-on-desktop {
+ position: -webkit-sticky;
+ position: sticky;
+ top: var(--space-sm);
+ max-height: calc(100vh - var(--space-sm));
+ overflow: auto;
+ -webkit-overflow-scrolling: touch;
+}
+
+/* end desktop version */
+.sidebar, .sidebar-loaded\:show {
+ opacity: 0;
+ /* hide sidebar - or other elements using the .sidebar-loaded:show class - while it is initialized in JS */
+}
+
+.sidebar--loaded {
+ opacity: 1;
+}
+
+/* detect when the sidebar needs to switch from the mobile layout to a static one - used in JS */
+[class*=sidebar--static]::before {
+ display: none;
+}
+
+.sidebar--static::before {
+ content: "static";
+}
+
+.sidebar--static\@xs::before {
+ content: "mobile";
+}
+@media (min-width: 32rem) {
+ .sidebar--static\@xs::before {
+ content: "static";
+ }
+}
+
+.sidebar--static\@sm::before {
+ content: "mobile";
+}
+@media (min-width: 48rem) {
+ .sidebar--static\@sm::before {
+ content: "static";
+ }
+}
+
+.sidebar--static\@md::before {
+ content: "mobile";
+}
+@media (min-width: 64rem) {
+ .sidebar--static\@md::before {
+ content: "static";
+ }
+}
+
+.sidebar--static\@lg::before {
+ content: "mobile";
+}
+@media (min-width: 80rem) {
+ .sidebar--static\@lg::before {
+ content: "static";
+ }
+}
+
+.sidebar--static\@xl::before {
+ content: "mobile";
+}
+@media (min-width: 90rem) {
+ .sidebar--static\@xl::before {
+ content: "static";
+ }
+} \ No newline at end of file
diff --git a/old-apps/projects/src/app/pages/nav/css/2_side-navigation-v4.css b/old-apps/projects/src/app/pages/nav/css/2_side-navigation-v4.css
new file mode 100644
index 0000000..ec5fcdf
--- /dev/null
+++ b/old-apps/projects/src/app/pages/nav/css/2_side-navigation-v4.css
@@ -0,0 +1,213 @@
+/* --------------------------------
+
+File#: _2_side-navigation-v4
+Title: Side Navigation v4
+Descr: Main, side navigation
+Usage: codyhouse.co/license
+
+-------------------------------- */
+.sidenav-v4 {
+ --sidenav-v4-icon-size: 20px;
+ --sidenav-v4-icon-margin-right: var(--space-xxs);
+}
+
+.sidenav-v4__item {
+ position: relative;
+}
+
+.sidenav-v4__link,
+.sidenav-v4__sub-link,
+.sidenav-v4__separator {
+ padding: var(--space-sm);
+}
+
+.sidenav-v4__link, .sidenav-v4__sub-link {
+ display: flex;
+ align-items: center;
+ width: 100%;
+ border-radius: var(--radius-md);
+ text-decoration: none;
+ color: inherit;
+ line-height: 1;
+ font-size: var(--text-md);
+ transition: 0.2s;
+}
+.sidenav-v4__link:hover, .sidenav-v4__sub-link:hover {
+ color: var(--color-primary);
+ background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.075);
+}
+.sidenav-v4__link[aria-current=page], .sidenav-v4__sub-link[aria-current=page] {
+ color: var(--color-primary);
+}
+
+.sidenav-v4__sub-link {
+ position: relative;
+ color: var(--color-contrast-medium);
+ /* dot indicator */
+}
+.sidenav-v4__sub-link::before {
+ content: "";
+ display: block;
+ --size: 6px;
+ width: var(--size);
+ height: var(--size);
+ background: currentColor;
+ border-radius: 50%;
+ margin-left: calc(var(--sidenav-v4-icon-size)/2 - var(--size)/2);
+ margin-right: calc(var(--sidenav-v4-icon-size)/2 - var(--size)/2 + var(--sidenav-v4-icon-margin-right));
+ opacity: 0;
+ /* visible only if current */
+}
+.sidenav-v4__sub-link[aria-current=page]::before {
+ /* show dot indicator */
+ opacity: 1;
+}
+
+.sidenav-v4__notification-marker {
+ margin-left: auto;
+ background-color: var(--color-accent);
+ border-radius: var(--radius-md);
+ height: 16px;
+ line-height: 16px;
+ padding: 0 4px;
+ color: var(--color-white);
+ font-size: 12px;
+ /* hide - visible only on desktop */
+ display: none;
+}
+
+/* label icon */
+.sidenav-v4__icon {
+ --size: var(--sidenav-v4-icon-size);
+ margin-right: var(--sidenav-v4-icon-margin-right);
+}
+
+/* arrow icon - visible on mobile if item is expandable */
+.sidenav-v4__arrow-icon {
+ --size: 20px;
+ /* hide icon for links - show only for buttons created in JS */
+}
+.sidenav-v4__arrow-icon .icon__group {
+ will-change: transform;
+ -webkit-transform-origin: 50% 50%;
+ transform-origin: 50% 50%;
+ -webkit-transform: rotate(-90deg);
+ transform: rotate(-90deg);
+ transition: -webkit-transform 0.3s var(--ease-out);
+ transition: transform 0.3s var(--ease-out);
+ transition: transform 0.3s var(--ease-out), -webkit-transform 0.3s var(--ease-out);
+}
+.sidenav-v4__arrow-icon .icon__group > * {
+ -webkit-transform-origin: 50% 50%;
+ transform-origin: 50% 50%;
+ stroke-dasharray: 20;
+ stroke-dashoffset: 0;
+ -webkit-transform: translateY(0px);
+ transform: translateY(0px);
+ transition: stroke-dashoffset 0.3s, -webkit-transform 0.3s;
+ transition: transform 0.3s, stroke-dashoffset 0.3s;
+ transition: transform 0.3s, stroke-dashoffset 0.3s, -webkit-transform 0.3s;
+ transition-timing-function: var(--ease-out);
+}
+.sidenav-v4__item--collapsed .sidenav-v4__arrow-icon .icon__group {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+}
+.sidenav-v4__item--collapsed .sidenav-v4__arrow-icon .icon__group > * {
+ -webkit-transform: translateY(4px);
+ transform: translateY(4px);
+}
+.sidenav-v4__item--collapsed .sidenav-v4__arrow-icon .icon__group > *:first-child {
+ stroke-dashoffset: 10.15;
+}
+.sidenav-v4__item--collapsed .sidenav-v4__arrow-icon .icon__group > *:last-child {
+ stroke-dashoffset: 10.15;
+}
+.sidenav-v4__link--href .sidenav-v4__arrow-icon {
+ display: none;
+}
+
+/* current item */
+.sidenav-v4__item--current .sidenav-v4__sub-list {
+ display: block;
+ /* show sublist */
+}
+
+/* separator */
+.sidenav-v4__separator span {
+ display: block;
+ width: var(--sidenav-v4-icon-size);
+ height: 1px;
+ background-color: var(--color-contrast-lower);
+}
+
+/* mobile only */
+@media not all and (min-width: 64rem) {
+ .sidenav-v4__item--collapsed .sidenav-v4__sub-list {
+ display: none;
+ }
+
+ .sidenav-v4__link--href {
+ display: none;
+ /* hide link -> show button */
+ }
+}
+/* desktop */
+@media (min-width: 64rem) {
+ .sidenav-v4__sub-list {
+ display: none;
+ }
+
+ .sidenav-v4__link,
+.sidenav-v4__sub-link,
+.sidenav-v4__separator {
+ padding: var(--space-xs);
+ }
+
+ .sidenav-v4__link,
+.sidenav-v4__sub-link {
+ font-size: var(--text-sm);
+ }
+
+ .sidenav-v4__link--btn {
+ display: none;
+ /* hide button -> show link */
+ }
+
+ /* tooltip */
+ .sidenav-v4__item:not(.sidenav-v4__item--current) .sidenav-v4__sub-list {
+ width: 220px;
+ position: absolute;
+ z-index: var(--z-index-overlay);
+ left: 100%;
+ top: 0;
+ background-color: var(--color-bg-light);
+ box-shadow: var(--inner-glow), var(--shadow-md);
+ border-radius: var(--radius-md);
+ overflow: hidden;
+ }
+ .sidenav-v4__item:not(.sidenav-v4__item--current) .sidenav-v4__sub-link {
+ border-radius: 0;
+ color: var(--color-contrast-high);
+ }
+ .sidenav-v4__item:not(.sidenav-v4__item--current) .sidenav-v4__sub-link::before {
+ display: none;
+ /* remove dot indicator */
+ }
+ .sidenav-v4__item:not(.sidenav-v4__item--current) .sidenav-v4__sub-link:hover {
+ color: var(--color-primary);
+ }
+ .sidenav-v4__item:not(.sidenav-v4__item--current).sidenav-v4__item--hover .sidenav-v4__sub-list, .sidenav-v4__item:not(.sidenav-v4__item--current):focus-within .sidenav-v4__sub-list {
+ display: block;
+ }
+ .sidenav-v4__item:not(.sidenav-v4__item--current):hover .sidenav-v4__link {
+ /* highlight main link if tooltip is visible */
+ color: var(--color-primary);
+ background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.075);
+ }
+
+ /* notification marker */
+ .sidenav-v4__notification-marker {
+ display: block;
+ }
+} \ No newline at end of file