diff --git a/package-lock.json b/package-lock.json index 01b4a7d..c2b89b5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1615,9 +1615,9 @@ } }, "@startinblox/hubl-styling-framework": { - "version": "1.8.21", - "resolved": "https://registry.npmjs.org/@startinblox/hubl-styling-framework/-/hubl-styling-framework-1.8.21.tgz", - "integrity": "sha512-4T0sqL7rqqe8uFmH4f8geigxZ4pIxI1ze3sycM762CQFtM5fXadAI9tl7wwAOQbY15y6xfZfDcPoK0YEjv0v9g==" + "version": "1.8.24", + "resolved": "https://registry.npmjs.org/@startinblox/hubl-styling-framework/-/hubl-styling-framework-1.8.24.tgz", + "integrity": "sha512-eYrFaNG9iD3dskQcID7eEXabQZaE1u6QKuhJ8HTcnEKUFCo2DQhMe1F15zwYtxVeGE7KTrbGlGPGxfRQ2r8hig==" }, "@types/q": { "version": "1.5.4", diff --git a/package.json b/package.json index 5bd7775..5f8fc94 100644 --- a/package.json +++ b/package.json @@ -57,7 +57,7 @@ "clearDist": false }, "dependencies": { - "@startinblox/hubl-styling-framework": "^1.8.21", + "@startinblox/hubl-styling-framework": "^1.8.24", "cross-env": "^7.0.3", "fs-extra": "^9.0.1", "normalize.css": "^8.0.1", diff --git a/src/dependencies.pug b/src/dependencies.pug index 169ae73..d9558b2 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -17,7 +17,7 @@ if componentSet.has("autoLogin") || componentSet.has("registering") //- script(type="module" src="/lib/sib-auth/index.js" defer) if componentSet.has("chat") || componentSet.has("circles") || componentSet.has("projects") - script(type="module" src="https://cdn.skypack.dev/@startinblox/component-chat@5.2" defer) + script(type="module" src="https://cdn.skypack.dev/@startinblox/component-chat@5.3" defer) //- script(type="module" src="/lib/solid-xmpp-chat/dist/index.js" defer) if componentSet.has("communities") @@ -57,7 +57,7 @@ if componentSet.has("profileDirectory") //- script(type="module" src="/lib/solid-directory/dist/index.js" defer) if componentSet.has("resources") - script(type="module", src="https://cdn.skypack.dev/@startinblox/component-resource@3.1", defer) + script(type="module", src="https://cdn.skypack.dev/@startinblox/component-resource@3.3", defer) //- script(type="module" src="/lib/solid-resource/solid-resource.js" defer) if componentSet.has("themeChecker") diff --git a/src/index.pug b/src/index.pug index bbcaf98..fd4c073 100644 --- a/src/index.pug +++ b/src/index.pug @@ -99,7 +99,7 @@ html(lang="en") include views/page-messages.pug if component.type == "circles" - .with-sidebar.whitespace-normal + .with-sidebar.whitespace-normal.jsMobileContentSidebarControl hubl-reactivity(bind-user nested-field='inbox' target-src="store://user.circles") hubl-reactivity(bind-user nested-field="circles" target-src="store://user") hubl-reactivity(data-src=`${component.endpoints.get}joinable/` target-src=`${component.endpoints.get}`) @@ -141,7 +141,7 @@ html(lang="en") include views/page-polls.pug if component.type == "projects" - .with-sidebar.whitespace-normal + .with-sidebar.whitespace-normal.jsMobileContentSidebarControl hubl-reactivity(bind-user nested-field='inbox' target-src="store://user.projects") hubl-reactivity(bind-user nested-field="projects" target-src="store://user") hubl-reactivity(data-src=`${component.endpoints.post}joinable/` target-src=`${component.endpoints.get}`) diff --git a/src/locales/en.json b/src/locales/en.json index f8856ff..676c885 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -281,7 +281,7 @@ "hublStatus": "Public = Public, Private = Private", "success": "Success!", "errors": { - "somethingGoesWrong": "Something goes wrong, try to", + "somethingGoesWrong": "Something went wrong, try to", "reload": "reload" }, "goButton": "GO", diff --git a/src/scripts/keyboard-shortcuts.js b/src/scripts/keyboard-shortcuts.js new file mode 100644 index 0000000..561c41d --- /dev/null +++ b/src/scripts/keyboard-shortcuts.js @@ -0,0 +1,9 @@ +document.addEventListener("keydown", function (e) { + /* + CTRL + K : Focus on the user search + */ + if(e.ctrlKey && e.key == "k") { + document.querySelector('#general-search input[type="text"]').focus(); + e.preventDefault(); + } +}); diff --git a/src/scripts/navigate-event.js b/src/scripts/navigate-event.js index d2fc2e7..9fb041a 100644 --- a/src/scripts/navigate-event.js +++ b/src/scripts/navigate-event.js @@ -19,13 +19,27 @@ function closeRightMenu() { el.querySelector('.text-right').setAttribute('hidden', ''); el.querySelector('.text-left').removeAttribute('hidden'); }); - Array.from(rightMenu).forEach(el => el.removeAttribute("open")); + Array.from(rightMenu).forEach(el => { + el.removeAttribute("open"); + el.classList.add('sm-hidden'); + Array.from(el.parentElement.querySelectorAll('.jsMobileRightMenuButton')).forEach(ac => { + ac.classList.remove('icon-close'); + ac.classList.add('icon-options-vertical'); + }); + }); } } function openRightMenu() { let rightMenu = document.querySelectorAll(".jsRightMenu"); - Array.from(rightMenu).forEach(el => el.setAttribute("open", "")); + Array.from(rightMenu).forEach(el => { + el.setAttribute("open", ""); + el.classList.remove('sm-hidden'); + Array.from(el.parentElement.querySelectorAll('.jsMobileRightMenuButton')).forEach(ac => { + ac.classList.remove('icon-options-vertical'); + ac.classList.add('icon-close'); + }); + }); Array.from(document.querySelectorAll(".jsOffsiteToggle")).forEach(el => { el.querySelector('.text-left').setAttribute('hidden', ''); el.querySelector('.text-right').removeAttribute('hidden'); @@ -35,6 +49,32 @@ function openRightMenu() { ); } +function closeRightMobileMenu() { + let rightMenu = document.querySelectorAll(".jsRightMenu"); + if (Array.from(rightMenu).filter(el => el.hasAttribute("mobile-open")).length > 0) { + Array.from(rightMenu).forEach(el => { + el.removeAttribute("mobile-open"); + el.classList.add('sm-hidden'); + Array.from(el.parentElement.querySelectorAll('.jsMobileRightMenuButton')).forEach(ac => { + ac.classList.remove('icon-close'); + ac.classList.add('icon-options-vertical'); + }); + }); + } +} + +function openRightMobileMenu() { + let rightMenu = document.querySelectorAll(".jsRightMenu"); + Array.from(rightMenu).forEach(el => { + el.setAttribute("mobile-open", ""); + el.classList.remove('sm-hidden'); + Array.from(el.parentElement.querySelectorAll('.jsMobileRightMenuButton')).forEach(ac => { + ac.classList.remove('icon-options-vertical'); + ac.classList.add('icon-close'); + }); + }); +} + document.addEventListener("DOMContentLoaded", function () { const componentSet = new Set(window.hubl.components.map(c => c.type)); @@ -112,9 +152,11 @@ document.addEventListener("DOMContentLoaded", function () { closeLeftMenu(); } if ( - !event.target.closest(".jsOffsiteToggle") + !event.target.closest(".jsOffsiteToggle") && + !event.target.classList.contains('jsMobileRightMenuButton') ) { closeRightMenu(); + closeRightMobileMenu(); } }); @@ -125,6 +167,7 @@ document.addEventListener("DOMContentLoaded", function () { closeUserControls(); closeLeftMenu(); closeRightMenu(); + closeRightMobileMenu(); } }; @@ -152,10 +195,15 @@ document.addEventListener("DOMContentLoaded", function () { }); }); - Array.from(document.querySelectorAll(".jsMobileSidebarOpenButton")).forEach( + + Array.from(document.querySelectorAll(".jsMobileRightMenuButton")).forEach( el => { el.addEventListener("click", () => { - openRightMenu(); + if (el.closest('.jsMobileContentSidebarControl').querySelector('nav.jsRightMenu').hasAttribute("mobile-open")) { + closeRightMobileMenu(); + } else { + openRightMobileMenu(); + } }); } ); diff --git a/src/scripts/timeout-goeswrong.js b/src/scripts/timeout-goeswrong.js index 8df7662..0464b84 100644 --- a/src/scripts/timeout-goeswrong.js +++ b/src/scripts/timeout-goeswrong.js @@ -8,4 +8,4 @@ setTimeout(() => { } } } -}, 10000); \ No newline at end of file +}, 15000); \ No newline at end of file diff --git a/src/styles/admin-circles/_index.scss b/src/styles/admin-circles/_index.scss index 7ac883d..7752f3d 100644 --- a/src/styles/admin-circles/_index.scss +++ b/src/styles/admin-circles/_index.scss @@ -173,7 +173,7 @@ height: 100%; background-position: center; background-repeat: no-repeat; - background-size: contain; + background-size: cover; } } } @@ -287,7 +287,7 @@ } .community-profile-logo { - border-bottom: 1px solid #D6CECE; + border-bottom: 1px solid #E4E9F1; } hubl-communities-profile-logo { diff --git a/src/styles/content/_index.scss b/src/styles/content/_index.scss index 40aed50..115f927 100644 --- a/src/styles/content/_index.scss +++ b/src/styles/content/_index.scss @@ -22,8 +22,8 @@ main { &.sidebar-is-closed { @media(min-width: 768.01px) { - margin-left: -152px; - transform: translate(152px); + margin-left: -157px; + transform: translate(157px); } } } @@ -39,18 +39,11 @@ main { width: 217px; @media (max-width: 768px) { - width: 65px; + width: 60px; } ul { - - li { - border-bottom: 1px solid #D6CECE; - - &>a { - vertical-align: super; - } - } + &>li:first-child>a { vertical-align: middle; } @@ -69,11 +62,28 @@ main { /* Styles use with JS to open/close the sidebar */ &.jsRightMenu { - display: block; + @media (min-width: 768,01px) { + display: block; + } + + @media (max-width: 768px) { + position: fixed; + top: 99px; + right: 0; + height: auto; + z-index: 2999; + box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.14); + } + solid-link[active] { color: white; background: var(--color-heading); + + >li { + border-bottom: 1px solid var(--color-heading); + } } + solid-link:not([active]):hover { background: #e4e4e4; } @@ -81,15 +91,7 @@ main { &.jsRightMenu:not([open]) { @media (min-width: 768.01px) { - transform: translate(152px); - } - - /* Quick fix. When you got time, use animation on the span instead */ - @media (max-width: 768px) { - ul>li:first-child>span, - ul>li:first-child>a { - visibility: hidden; - } + transform: translate(157px); } } @@ -97,16 +99,12 @@ main { display: block; bottom: 0; right: 0; - - @media(max-width: 768px) { - box-shadow: 0 2px 9px 0 rgba(0, 0, 0, 0.12); - min-width: 60%; - position: fixed; - top: 50px; - z-index: 3000; - } } } + + .jsMobileRightMenuButton { + float: right; + } } /* Add scrollbar to the left menu and to the content */ @@ -122,11 +120,11 @@ main { height: 100vh; } -/* Custom scrollbar of the left-menu*/ +/* Custom scrollbar of the right-menu */ /* Works on Firefox*/ .scrollbar-nav { scrollbar-width: thin; - scrollbar-color:#D6CECE var(--color-heading); + scrollbar-color:#E4E9F1 var(--color-heading); } /* Works on Chrome, Edge, and Safari */ @@ -140,20 +138,17 @@ main { } &::-webkit-scrollbar-thumb { - background-color:#D6CECE; /* color of the scroll thumb */ + background-color:#E4E9F1; /* color of the scroll thumb */ border-radius: 6px; /* roundness of the scroll thumb */ border: 3px solid var(--color-heading); /* creates padding around scroll thumb */ } } - - - /* Custom scrollbar of the content */ /* Works on Firefox */ .scrollbar-content { scrollbar-width: thin; - scrollbar-color:#D6CECE white; /* scroll thumb and track */ + scrollbar-color:#E4E9F1 white; /* scroll thumb and track */ } /* Works on Chrome, Edge, and Safari */ @@ -167,11 +162,12 @@ main { } &::-webkit-scrollbar-thumb { - background-color:#D6CECE; /* color of the scroll thumb */ + background-color:#E4E9F1; /* color of the scroll thumb */ border-radius: 6px; /* roundness of the scroll thumb */ border: 3px solid white; /* creates padding around scroll thumb */ } } +/* End scrollbar*/ solid-display-value-markdown { diff --git a/src/styles/header/_index.scss b/src/styles/header/_index.scss index 4865079..44e490f 100644 --- a/src/styles/header/_index.scss +++ b/src/styles/header/_index.scss @@ -393,7 +393,7 @@ header { box-shadow: none; >ul>li:last-child { - border-bottom: 1px solid #d6cece; + border-bottom: 1px solid #E4E9F1; } } } diff --git a/src/styles/index.scss b/src/styles/index.scss index a5fc667..8ae3a07 100644 --- a/src/styles/index.scss +++ b/src/styles/index.scss @@ -92,3 +92,14 @@ hubl-menu-empty+hubl-menu-empty { .two-lines-ellipsis { display: -webkit-box !important; } + +.link-hover { + text-decoration: underline; + &:before { + text-decoration: none; + } + + &:hover { + text-decoration: none; + } +} \ No newline at end of file diff --git a/src/views/page-admin.pug b/src/views/page-admin.pug index a715eee..2e33722 100644 --- a/src/views/page-admin.pug +++ b/src/views/page-admin.pug @@ -1,4 +1,4 @@ -.with-sidebar.whitespace-normal.bg-color-white.only-on-admin(hidden) +.with-sidebar.jsMobileContentSidebarControl.whitespace-normal.bg-color-white.only-on-admin(hidden) .scrollbar-content.views-container.sidebar-is-closed for component of components if component.route @@ -57,10 +57,10 @@ ) include partials/admin/page-admin-chat-create.pug - nav.jsRightMenu.text-disable-selection.sidebar.whitespace-normal(role='navigation') + nav.jsRightMenu.segment.sm-hidden.text-disable-selection.sidebar.whitespace-normal(role='navigation') .segment.whitespace-normal.text-color-heading.text-bold ul - li.segment.full.padding-small.text-normal.jsOffsiteToggle + li.segment.full.sm-hidden.padding-small.text-normal.border-bottom.border-color-grey.jsOffsiteToggle span.icon.icon-arrow-left.icon-xsmall.margin-left-xxsmall.text-left span.segment.full.text-right(hidden) span.icon.icon-arrow-right.icon-xsmall.margin-right-xxsmall @@ -69,16 +69,16 @@ if component.route if component.type == "circles" solid-link.segment.full(next=`admin-${component.route}`) - li.segment.full.padding-medium - span.icon.ci-bubble-add.icon-xlarge.margin-right-medium - a(data-trans='admin.menuRight.circles') + li.segment.full.padding-medium.border-bottom.border-color-grey + span.icon.icon-globe.icon-large.margin-right-medium + a.text-baseline(data-trans='admin.menuRight.circles') if component.type == "projects" solid-link.segment.full(next=`admin-${component.route}`) - li.segment.full.padding-medium - span.icon.ci-add.icon-xlarge.margin-right-medium - a(data-trans='admin.menuRight.projects') + li.segment.full.padding-medium.border-bottom.border-color-grey + span.icon.icon-folder-alt.icon-large.margin-right-medium + a.text-baseline(data-trans='admin.menuRight.projects') if component.type == "chat" solid-link.segment.full(next=`admin-${component.route}`) - li.segment.full.padding-medium - span.icon.ci-networking.icon-xlarge.margin-right-medium - a(data-trans='admin.menuRight.community') + li.segment.full.padding-medium.border-bottom.border-color-grey + span.icon.icon-grid.icon-large.margin-right-medium + a.text-baseline(data-trans='admin.menuRight.community') diff --git a/src/views/page-circle.pug b/src/views/page-circle.pug index f52c76c..d06725c 100644 --- a/src/views/page-circle.pug +++ b/src/views/page-circle.pug @@ -41,10 +41,10 @@ ) include partials/circle/page-circle-polls.pug -nav.jsRightMenu.text-disable-selection.sidebar.whitespace-normal(role='navigation') +nav.jsRightMenu.segment.sm-hidden.text-disable-selection.sidebar.whitespace-normal(role='navigation') solid-router.segment.whitespace-normal.text-color-heading.text-bold(default-route=`${component.route}-chat`) ul - li.segment.full.padding-small.text-normal.jsOffsiteToggle + li.segment.full.sm-hidden.padding-small.text-normal.jsOffsiteToggle span.icon.icon-arrow-left.icon-xsmall.margin-left-xxsmall.text-left span.segment.full.text-right(hidden) span.icon.icon-arrow-right.icon-xsmall.margin-right-xxsmall diff --git a/src/views/page-project.pug b/src/views/page-project.pug index 518e936..3463989 100644 --- a/src/views/page-project.pug +++ b/src/views/page-project.pug @@ -32,10 +32,10 @@ ) include partials/project/page-project-invoices.pug -nav.jsRightMenu.text-disable-selection.sidebar.whitespace-normal(role='navigation') +nav.jsRightMenu.segment.sm-hidden.text-disable-selection.sidebar.whitespace-normal(role='navigation') solid-router.segment.whitespace-normal.text-color-heading.text-bold(default-route=`${component.route}-chat`) ul - li.segment.full.padding-small.text-normal.jsOffsiteToggle + li.segment.full.sm-hidden.padding-small.text-normal.jsOffsiteToggle span.icon.icon-arrow-left.icon-xsmall.margin-left-xxsmall.text-left span.segment.full.text-right(hidden) span.icon.icon-arrow-right.icon-xsmall.margin-right-xxsmall diff --git a/src/views/partials/admin/page-admin-chat-create.pug b/src/views/partials/admin/page-admin-chat-create.pug index 85ce2ff..a2a70bb 100644 --- a/src/views/partials/admin/page-admin-chat-create.pug +++ b/src/views/partials/admin/page-admin-chat-create.pug @@ -1,8 +1,10 @@ div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.padding-large.border-bottom.border-color-grey - div.segment.half.sm-full + div.segment.full.sm-three-quarter h2.margin-none.text-color-heading.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='communities.title') div.segment.half.sm-hidden.text-right solid-link(class="backlink", next=`admin-${getRoute('chat', true)}` data-trans='circle.create.backlink') + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespace-normal div#loader-users-title.loader.loader @@ -11,12 +13,6 @@ div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespac div div - div#loader-users-create.loader.loader-top - div - div - div - div - div.segment.margin-bottom-medium div.segment solid-display.text-color-heading.text-semibold.text-xlarge.text-letter-spacing-large( @@ -27,6 +23,12 @@ div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespac loader-id='loader-users-title' ) + div#loader-users-create.loader.loader-top + div + div + div + div + solid-form.form#selected-community( bind-resources nested-field='members' diff --git a/src/views/partials/admin/page-admin-chat.pug b/src/views/partials/admin/page-admin-chat.pug index 0d7fdf0..8af7019 100644 --- a/src/views/partials/admin/page-admin-chat.pug +++ b/src/views/partials/admin/page-admin-chat.pug @@ -1,5 +1,8 @@ div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey.whitespace-normal - h2.margin-none.text-color-heading.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='communities.title') + div.segment.full.sm-three-quarter + h2.margin-none.text-color-heading.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='communities.title') + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespace-normal diff --git a/src/views/partials/admin/page-admin-circles-create.pug b/src/views/partials/admin/page-admin-circles-create.pug index ad90c8f..c5e5f70 100644 --- a/src/views/partials/admin/page-admin-circles-create.pug +++ b/src/views/partials/admin/page-admin-circles-create.pug @@ -1,8 +1,10 @@ div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey - div.segment.half.sm-full + div.segment.full.sm-three-quarter h2.margin-none.text-color-heading.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='circle.create.title') div.segment.half.sm-hidden.text-right solid-link(class="backlink", next=`admin-${getRoute('circles', true)}` data-trans='circle.create.backlink') + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespace-normal div.loader.loader-top(id=`loader-admin-${getComponent('circles').uniq}`) @@ -14,33 +16,34 @@ div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespac solid-form.form( data-src=`${getComponent('circles').endpoints.post}` - fields='status, community, name, subtitle, description, help' + fields='status, community.community, name, subtitle, description, help' required-status - required-community + required-community.community required-name required-subtitle loader-id=`loader-admin-${getComponent('circles').uniq}` class-status='segment margin-bottom-medium half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' - class-community='segment margin-bottom-medium half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' + class-community.community='segment margin-bottom-medium half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' class-name='segment margin-bottom-medium half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' class-subtitle='segment margin-bottom-medium half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' class-description='segment margin-bottom-xxsmall full text-small text-semibold text-uppercase text-color-heading' class-help='segment full text-small margin-bottom-medium padding-left-small' label-status='' - label-community='' + label-community.community='' label-name='' label-subtitle='' label-description='' label-help='' - range-community='store://user.communities' - option-label-community="community.name" + range-community.community='store://user.communities' + option-label-community.community="community.name" + option-value-community.community="community" widget-status='solid-form-dropdown-autocompletion-label' enum-status="" - widget-community='solid-form-dropdown-autocompletion-label' + widget-community.community='solid-form-dropdown-autocompletion-label' widget-linebreak='solid-form-hidden' widget-description='solid-form-richtext-label' @@ -51,5 +54,5 @@ div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespac submit-button='' submit-widget="button" - data-trans='enum-status=hublStatus;label-status=circle.create.labelStatus;label-community=circle.create.labelCommunity;label-name=circle.create.labelName;label-description=circle.create.labelDescription;submit-button=circle.create.buttonSubmit;label-subtitle=circle.create.labelSubtitle;label-help=circle.create.descriptionHelp' + data-trans='enum-status=hublStatus;label-status=circle.create.labelStatus;label-community.community=circle.create.labelCommunity;label-name=circle.create.labelName;label-description=circle.create.labelDescription;submit-button=circle.create.buttonSubmit;label-subtitle=circle.create.labelSubtitle;label-help=circle.create.descriptionHelp' ) diff --git a/src/views/partials/admin/page-admin-circles.pug b/src/views/partials/admin/page-admin-circles.pug index 9aae27b..e9c9843 100644 --- a/src/views/partials/admin/page-admin-circles.pug +++ b/src/views/partials/admin/page-admin-circles.pug @@ -1,5 +1,8 @@ div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey.whitespace-normal - h2.margin-none.text-color-heading.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='circle.list.title') + div.segment.full.sm-three-quarter + h2.margin-none.text-color-heading.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='circle.list.title') + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading div.segment.full.padding-large.padding-top-medium.padding-bottom-xsmall.sm-padding-xsmall.sm-padding-top-xxsmall.whitespace-normal diff --git a/src/views/partials/admin/page-admin-projects-create.pug b/src/views/partials/admin/page-admin-projects-create.pug index 662b5e0..467b7ae 100644 --- a/src/views/partials/admin/page-admin-projects-create.pug +++ b/src/views/partials/admin/page-admin-projects-create.pug @@ -1,8 +1,10 @@ div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey - div.segment.half.sm-full + div.segment.full.sm-three-quarter h2.margin-none.text-color-heading.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='project.create.title') div.segment.half.sm-hidden.text-right solid-link(class="backlink", next=`admin-${getRoute('projects', true)}` data-trans='project.create.backlink') + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespace-normal div.loader.loader-top(id=`loader-admin-${getComponent('projects').uniq}`) diff --git a/src/views/partials/admin/page-admin-projects.pug b/src/views/partials/admin/page-admin-projects.pug index e7bdc26..831516e 100644 --- a/src/views/partials/admin/page-admin-projects.pug +++ b/src/views/partials/admin/page-admin-projects.pug @@ -1,5 +1,8 @@ div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey.whitespace-normal - h2.margin-none.text-color-heading.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='project.list.title') + div.segment.full.sm-three-quarter + h2.margin-none.text-color-heading.text-uppercase.text-xlarge.text-letter-spacing-large(data-trans='project.list.title') + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespace-normal @@ -10,7 +13,7 @@ div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-medium.whitespac solid-ac-checker(data-src=`${getComponent('projects').endpoints.post}`, permission='acl:Append') solid-link( class='segment sm-full button text-xsmall text-bold text-uppercase text-center reversed color-secondary bordered icon icon-plus' - next='admin-projects-create' + next=`admin-${getRoute('projects', true)}-create` data-trans='project.list.buttonCreate' ) diff --git a/src/views/partials/circle/page-circle-chat.pug b/src/views/partials/circle/page-circle-chat.pug index 16a1ebf..80ad844 100644 --- a/src/views/partials/circle/page-circle-chat.pug +++ b/src/views/partials/circle/page-circle-chat.pug @@ -1,13 +1,16 @@ div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey.whitespace-normal - solid-display.text-xxlarge.text-letter-spacing-large( - bind-resources - fields='name, dash, subtitle' + div.segment.full.sm-three-quarter.whitespace-normal + solid-display.text-xlarge.text-letter-spacing-large( + bind-resources + fields='name, dash, subtitle' - value-dash=' - ' + value-dash=' - ' - class-name='text-color-heading text-bold' - class-dash='text-color-heading text-bold' - ) + class-name='text-color-heading text-bold' + class-dash='text-color-heading text-bold' + ) + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading .chat-view.segment.full.whitespace-normal solid-xmpp-chat( diff --git a/src/views/partials/circle/page-circle-edit.pug b/src/views/partials/circle/page-circle-edit.pug index 7249a40..1e0bfcd 100644 --- a/src/views/partials/circle/page-circle-edit.pug +++ b/src/views/partials/circle/page-circle-edit.pug @@ -1,7 +1,7 @@ solid-ac-checker(permission='acl:Read', bind-resources) div.segment.full.padding-large.border-bottom.border-color-grey - div.segment.half.sm-full - solid-display.text-xxlarge.text-letter-spacing-large( + div.segment.half.sm-three-quarter.whitespace-normal + solid-display.text-xlarge.text-letter-spacing-large( bind-resources fields='name, dash, subtitle' @@ -12,6 +12,8 @@ solid-ac-checker(permission='acl:Read', bind-resources) ) div.segment.half.sm-hidden.text-right solid-link(class="backlink", bind-resources, next=`${component.route}-profile` data-trans='circle.edit.backlink') + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading div.segment.full.padding-large.whitespace-normal @@ -25,12 +27,12 @@ div.segment.full.padding-large.whitespace-normal solid-form.form( bind-resources - fields='name, subtitle, description, status, community, owner' + fields='name, subtitle, description, status, community.community, owner' required-status required-name required-owner required-subtitle - required-community + required-community.community range-owner=`${component.endpoints.owners}` label-name='' @@ -38,14 +40,14 @@ div.segment.full.padding-large.whitespace-normal label-description='' label-subtitle='' label-status='' - label-community='' + label-community.community='' label-help='' class-name='segment margin-bottom-medium half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' class-subtitle='segment margin-bottom-medium half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading' class-description='segment margin-bottom-medium full text-small text-semibold text-uppercase text-color-heading' class-status='segment margin-bottom-medium half sm-full padding-right-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' - class-community='segment margin-bottom-medium half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' + class-community.community='segment margin-bottom-medium half sm-full padding-left-small sm-padding-none text-small text-semibold text-uppercase text-color-heading whitespace-normal' class-owner='hidden' class-help='segment full text-small margin-bottom-medium padding-left-small' @@ -53,11 +55,12 @@ div.segment.full.padding-large.whitespace-normal enum-status="" widget-description='solid-form-richtext-label' widget-help='solid-form-hidden-label' - widget-community='solid-form-dropdown-autocompletion-label' + widget-community.community='solid-form-dropdown-autocompletion-label' widget-owner='solid-form-dropdown-autocompletion-label' - range-community='store://user.communities' - option-label-community="community.name" + range-community.community='store://user.communities' + option-label-community.community="community.name" + option-value-community.community="community" partial='' @@ -65,7 +68,7 @@ div.segment.full.padding-large.whitespace-normal submit-widget="button" next=`${component.route}-information` - data-trans='enum-status=hublStatus;label-status=circle.edit.labelStatus;label-community=circle.edit.labelCommunity;label-name=circle.edit.labelName;label-owner=circle.edit.labelOwner;label-description=circle.edit.labelDescription;submit-button=circle.edit.buttonSubmit;label-subtitle=circle.edit.labelSubtitle;label-help=circle.edit.descriptionHelp' + data-trans='enum-status=hublStatus;label-status=circle.edit.labelStatus;label-community.community=circle.edit.labelCommunity;label-name=circle.edit.labelName;label-owner=circle.edit.labelOwner;label-description=circle.edit.labelDescription;submit-button=circle.edit.buttonSubmit;label-subtitle=circle.edit.labelSubtitle;label-help=circle.edit.descriptionHelp' ) h3.segment.full.padding-bottom-small.border-bottom.border-color-grey.text-color-heading.text-bold.text-letter-spacing-large(data-trans='circle.edit.subTitle') diff --git a/src/views/partials/circle/page-circle-profile.pug b/src/views/partials/circle/page-circle-profile.pug index 30a5b43..39980dc 100644 --- a/src/views/partials/circle/page-circle-profile.pug +++ b/src/views/partials/circle/page-circle-profile.pug @@ -9,15 +9,18 @@ div( ) solid-ac-checker.segment.block(permission='acl:Read', bind-resources) div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey.whitespace-normal - solid-display.text-xxlarge.text-letter-spacing-large( - bind-resources - fields='name, dash, subtitle' + div.segment.full.sm-three-quarter.whitespace-normal + solid-display.text-xlarge.text-letter-spacing-large( + bind-resources + fields='name, dash, subtitle' - value-dash=' - ' + value-dash=' - ' - class-name='text-color-heading text-bold' - class-dash='text-color-heading text-bold' - ) + class-name='text-color-heading text-bold' + class-dash='text-color-heading text-bold' + ) + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-xlarge div.loader(id=`loader-${component.route}-profile-1`) @@ -67,8 +70,9 @@ div( search-fields='user' search-widget-user='solid-form-hidden' search-value-user='store://user.@id' - empty-widget='hubl-circle-join-button' + disabled-empty-widget='hubl-circle-join-button' ) + //- https://git.startinblox.com/management/startinblox-feature-requests/issues/263 solid-ac-checker.segment.margin-left-small(permission='acl:Delete', bind-resources) solid-delete( class='segment sm-full text-xsmall text-center children-link-button children-link-text-bold children-link-text-uppercase children-link-color-secondary bordered' diff --git a/src/views/partials/communities/page-community-directory.pug b/src/views/partials/communities/page-community-directory.pug index 1076af9..fd4d529 100644 --- a/src/views/partials/communities/page-community-directory.pug +++ b/src/views/partials/communities/page-community-directory.pug @@ -8,12 +8,12 @@ fields='name' placeholder-name='' widget-name='solid-form-placeholder-text' - class-name="segment margin-bottom-medium sm-margin-bottom-none three-quarter sm-full padding-right-small sm-padding-none text-small input-bg-white children-shadow" + class-name="segment margin-bottom-medium sm-margin-bottom-none full sm-full padding-right-small sm-padding-none text-small input-bg-white children-shadow" submit-button="" submit-widget="button" data-trans='placeholder-name=communities.list.searchBy;submit-button=communities.list.searchButton' ) - div.segment.three-quarter.sm-full.text-right + div.segment.sm-full.text-right(style='float:right') solid-link.segment.children-link-rounded.children-icon-map.children-link-reversed.color-secondary.bordered(next=`${component.route}-map`) span diff --git a/src/views/partials/communities/page-community-map.pug b/src/views/partials/communities/page-community-map.pug index daf0ac7..62affce 100644 --- a/src/views/partials/communities/page-community-map.pug +++ b/src/views/partials/communities/page-community-map.pug @@ -9,13 +9,13 @@ search-filter='community.name, address_line1, address_line2' placeholder-filter='' widget-filter='solid-form-placeholder-text' - class-filter="segment margin-bottom-medium sm-margin-bottom-none three-quarter sm-full padding-right-small sm-padding-none text-small input-bg-white children-shadow" + class-filter="segment margin-bottom-medium sm-margin-bottom-none full sm-full padding-right-small sm-padding-none text-small input-bg-white children-shadow" submit-button="" submit-widget="button" data-trans='placeholder-filter=communities.list.searchBy;submit-button=communities.list.searchButton' ) - div.segment.three-quarter.sm-full.text-right + div.segment.sm-full.text-right(style='float:right') solid-link.segment.children-link-rounded.children-icon-grid.children-link-reversed.color-secondary.bordered(next=`${component.route}-directory`) span diff --git a/src/views/partials/communities/page-community-profile.pug b/src/views/partials/communities/page-community-profile.pug index 59dcc9b..029020b 100644 --- a/src/views/partials/communities/page-community-profile.pug +++ b/src/views/partials/communities/page-community-profile.pug @@ -17,19 +17,19 @@ div.community-profile.padding-medium.sm-padding-none class-segment0="segment full padding-xlarge sm-padding-none whitespace-normal" class-segment1="community-profile-logo segment quarter sm-full margin-top-medium padding-top-medium padding-right-medium sm-margin-top-xsmall sm-padding-medium text-center" - class-segment2="segment three-quarter sm-full sm-padding-top-medium sm-padding-right-xsmall sm-padding-bottom-medium sm-padding-left-xsmall text-top sm-text-center whitespace-normal" + class-segment2="segment three-quarter sm-full sm-padding-top-medium sm-padding-right-xsmall sm-padding-bottom-medium sm-padding-left-xsmall text-top whitespace-normal" - class-segment3="segment full sm-two-third" - class-segment4="segment half sm-two-third padding-top-xsmall" + class-segment3="segment full sm-full" + class-segment4="segment half sm-full padding-top-xsmall" class-name="segment block text-color-heading text-xxlarge text-bold sm-text-center margin-bottom-xxsmall whitespace-normal" class-segment5="segment half text-right sm-hidden" class-segment6="segment two-third sm-full padding-top-xsmall sm-text-center" class-profile.shortDescription="segment block sm-text-center margin-bottom-large whitespace-normal" - class-segment7="segment lg-hidden sm-full" + class-segment7="segment lg-hidden sm-full sm-text-center" - class-segment8="segment two-third sm-full padding-bottom-large padding-bottom-xxsmall sm-text-left" + class-segment8="segment two-third sm-full padding-bottom-large sm-padding-top-large padding-bottom-xxsmall sm-text-left" class-addresses="segment block margin-bottom-xsmall" class-members="segment block margin-bottom-xsmall" class-profile.website="segment block" @@ -37,7 +37,7 @@ div.community-profile.padding-medium.sm-padding-none class-profile.phone="segment block" class-segment9="segment full" - class-profile.description="segment full whitespace-normal" + class-profile.description="segment full whitespace-normal line-xlarge" class-segment10="segment full text-right" diff --git a/src/views/partials/header.pug b/src/views/partials/header.pug index 6a4f0c9..a31802f 100644 --- a/src/views/partials/header.pug +++ b/src/views/partials/header.pug @@ -48,7 +48,7 @@ div if componentSet.has("communities") && getComponent("chat").route solid-link.text-hover(next=`admin-${getRoute("chat", true)}`) li.segment.padding-top-small - a.icon.icon-people.icon-third.icon-small.icon-margin-right-xsmall(data-trans='admin.menuRight.community') + a.icon.icon-grid.icon-third.icon-small.icon-margin-right-xsmall(data-trans='admin.menuRight.community') if componentSet.has("circles") && getComponent("circles").route solid-link.text-hover(next=`admin-${getRoute("circles", true)}`) li.segment.padding-top-small diff --git a/src/views/partials/menu-left.pug b/src/views/partials/menu-left.pug index b16a1d8..1464866 100644 --- a/src/views/partials/menu-left.pug +++ b/src/views/partials/menu-left.pug @@ -29,7 +29,6 @@ solid-router#navbar-router(default-route=defaultRoute) div.segment.margin-right-xxsmall div.segment.icon.icon-small.icon-grid div.segment.text-uppercase.text-letter-spacing-large(data-trans="menuLeft.communities") - solid-route(name=`${component.route}-profile`) div.divider if component.type == "circles" @@ -81,6 +80,7 @@ solid-router#navbar-router(default-route=defaultRoute) solid-link.segment.block.menu-icon.icon.icon-small.icon-user-follow(next=getRoute('profileDirectory', true)) solid-badge.badge(data-type="Message") solid-route(name=`admin-${component.route}`, hidden) + solid-route(name=`admin-${component.route}-create` hidden) solid-route(name=component.route, rdf-type='foaf:user', use-id='', hidden) div.sub-menu.menu-notification.padding-bottom-xxsmall.jsMenuSub div.loader.loader-menu(id=`loader-${component.route}`) diff --git a/src/views/partials/project/page-project-chat.pug b/src/views/partials/project/page-project-chat.pug index 6130ed1..0af8628 100644 --- a/src/views/partials/project/page-project-chat.pug +++ b/src/views/partials/project/page-project-chat.pug @@ -1,17 +1,20 @@ div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey.whitespace-normal - solid-display.text-xxlarge.text-letter-spacing-large( - bind-resources - fields='const-title1, number, customer.name, dash, name' + div.segment.full.sm-three-quarter.whitespace-normal + solid-display.text-xlarge.text-letter-spacing-large( + bind-resources + fields='const-title1, number, customer.name, dash, name' - class-const-title1='text-color-heading text-bold text-uppercase' - class-number='text-color-heading text-bold text-uppercase word-spacing-right' - class-customer.name='text-color-heading text-bold text-uppercase' - class-dash='text-color-heading text-bold text-xlarge' - class-name='' + class-const-title1='text-color-heading text-bold text-uppercase' + class-number='text-color-heading text-bold text-uppercase word-spacing-right' + class-customer.name='text-color-heading text-bold text-uppercase' + class-dash='text-color-heading text-bold text-xlarge' + class-name='' - value-const-title1='N°' - value-dash=' - ' - ) + value-const-title1='N°' + value-dash=' - ' + ) + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading .chat-view.segment.full.whitespace-normal solid-xmpp-chat( diff --git a/src/views/partials/project/page-project-edit.pug b/src/views/partials/project/page-project-edit.pug index 325ff6b..08ff1a7 100644 --- a/src/views/partials/project/page-project-edit.pug +++ b/src/views/partials/project/page-project-edit.pug @@ -1,7 +1,7 @@ solid-ac-checker(permission='acl:Read', bind-resources) - div.segment.full.padding-large.border-bottom.border-color-grey - div.segment.half.sm-full - solid-display.text-xxlarge.text-letter-spacing-large( + div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey.whitespace-normal + div.segment.half.sm-three-quarter.whitespace-normal + solid-display.text-xlarge.text-letter-spacing-large( bind-resources fields='const-title1, number, customer.name, dash, name' @@ -16,6 +16,8 @@ solid-ac-checker(permission='acl:Read', bind-resources) ) div.segment.half.sm-hidden.text-right solid-link(class='backlink', bind-resources, next=`${component.route}-profile` data-trans='project.edit.backlink') + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading div.segment.full.padding-large.whitespace-normal diff --git a/src/views/partials/project/page-project-profile.pug b/src/views/partials/project/page-project-profile.pug index 9620c6d..ca86e47 100644 --- a/src/views/partials/project/page-project-profile.pug +++ b/src/views/partials/project/page-project-profile.pug @@ -9,19 +9,22 @@ div( ) solid-ac-checker.segment.block(permission='acl:Read', bind-resources) div.segment.full.padding-large.sm-padding-top-small.sm-padding-right-xsmall.sm-padding-bottom-small.sm-padding-left-xsmall.border-bottom.border-color-grey.whitespace-normal - solid-display.text-xxlarge.text-letter-spacing-large( - bind-resources - fields='const-title1, number, customer.name, dash, name' + div.segment.full.sm-three-quarter.whitespace-normal + solid-display.text-xlarge.text-letter-spacing-large( + bind-resources + fields='const-title1, number, customer.name, dash, name' - class-const-title1='text-color-heading text-bold text-uppercase' - class-number='text-color-heading text-bold text-uppercase word-spacing-right' - class-customer.name='text-color-heading text-bold text-uppercase' - class-dash='text-color-heading text-bold text-xlarge' - class-name='' + class-const-title1='text-color-heading text-bold text-uppercase' + class-number='text-color-heading text-bold text-uppercase word-spacing-right' + class-customer.name='text-color-heading text-bold text-uppercase' + class-dash='text-color-heading text-bold text-xlarge' + class-name='' - value-const-title1='N°' - value-dash=' - ' - ) + value-const-title1='N°' + value-dash=' - ' + ) + div.segment.lg-hidden.sm-quarter.text-right + div.jsMobileRightMenuButton.icon.icon-options-vertical.icon-heading div.segment.full.padding-large.sm-padding-xsmall.sm-padding-top-xlarge div.loader(id=`loader-${component.route}-profile`) diff --git a/src/views/partials/widgets/hubl-communities-profile-email.pug b/src/views/partials/widgets/hubl-communities-profile-email.pug index f5b762a..09e3eac 100644 --- a/src/views/partials/widgets/hubl-communities-profile-email.pug +++ b/src/views/partials/widgets/hubl-communities-profile-email.pug @@ -1,3 +1,3 @@ if componentSet.has('communities') && getRoute('communities') solid-widget(name='hubl-communities-profile-email') - template ${value != "" ? `${value}` : ""} + template ${value != "" ? `${value}` : ""} diff --git a/src/views/partials/widgets/hubl-communities-profile-members-counter.pug b/src/views/partials/widgets/hubl-communities-profile-members-counter.pug index 7bf2e5e..2c2bc8b 100644 --- a/src/views/partials/widgets/hubl-communities-profile-members-counter.pug +++ b/src/views/partials/widgets/hubl-communities-profile-members-counter.pug @@ -2,7 +2,7 @@ if componentSet.has('communities') && getRoute('communities') solid-widget(name='hubl-communities-profile-members-counter') template span - span.icon.icon-people.icon-third.icon-large.margin-right-xsmall + span.margin-bottom-xsmall.icon.mdi-account-multiple.icon-third.icon-large.icon-margin-right-xsmall solid-display.text-medium( data-src="${src || value}" fields='' diff --git a/src/views/partials/widgets/hubl-communities-profile-phone.pug b/src/views/partials/widgets/hubl-communities-profile-phone.pug index 67b5ded..2fb95db 100644 --- a/src/views/partials/widgets/hubl-communities-profile-phone.pug +++ b/src/views/partials/widgets/hubl-communities-profile-phone.pug @@ -1,3 +1,3 @@ if componentSet.has('communities') && getRoute('communities') solid-widget(name='hubl-communities-profile-phone') - template ${value != "" ? `${value}` : ""} + template ${value != "" ? `${value}` : ""} diff --git a/src/views/partials/widgets/hubl-communities-profile-website.pug b/src/views/partials/widgets/hubl-communities-profile-website.pug index 4b481d1..0a760d0 100644 --- a/src/views/partials/widgets/hubl-communities-profile-website.pug +++ b/src/views/partials/widgets/hubl-communities-profile-website.pug @@ -1,3 +1,3 @@ if componentSet.has('communities') && getRoute('communities') solid-widget(name='hubl-communities-profile-website') - template ${value != "" ? `${value}` : ""} + template ${value != "" ? `${value}` : ""}