From 32f8e8a1eab40020e6b483edc555fee2763358b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment?= Date: Fri, 19 Oct 2018 23:47:15 +0200 Subject: [PATCH] extract widgets --- src/dependencies.pug | 1 + src/page-group-profile.pug | 19 ------- src/page-job-offers.pug | 29 ---------- src/page-member-edit.pug | 4 +- src/page-members.pug | 53 ------------------ src/page-projects.pug | 18 ------ src/scripts/hd-widgets.js | 112 +++++++++++++++++++++++++++++++++++++ src/styles/form.scss | 4 +- 8 files changed, 117 insertions(+), 123 deletions(-) create mode 100644 src/scripts/hd-widgets.js diff --git a/src/dependencies.pug b/src/dependencies.pug index e9a65d6..8b4f5ba 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -15,6 +15,7 @@ script( ) script(src="/scripts/index.js") +script(src="/scripts/hd-widgets.js") // Stylesheets link(rel='stylesheet', href='/lib/normalize.css') diff --git a/src/page-group-profile.pug b/src/page-group-profile.pug index 51b33da..71cb0d4 100644 --- a/src/page-group-profile.pug +++ b/src/page-group-profile.pug @@ -1,23 +1,4 @@ -script. - document.addEventListener('WebComponentsReady', function(event) { - class HDAppMember extends SIBWidget { - get template() { - return ` -
- -
- `; - } - render() { - store.get(this.value).then( (value) => { - this._value = value; - this.innerHTML = this.template; - }); - } - } - customElements.define("hdapp-member", HDAppMember); - }); #group-profile sib-display( diff --git a/src/page-job-offers.pug b/src/page-job-offers.pug index 04d5220..cd5c160 100644 --- a/src/page-job-offers.pug +++ b/src/page-job-offers.pug @@ -1,33 +1,4 @@ -script. - document.addEventListener('WebComponentsReady', function(event) { - class HDAppAuthor extends SIBDisplayLookupList { - get parentElement() { - return 'div'; - } - getTemplate(value, index) { - var firstname, lastname; - if (typeof value == 'object') - if (Object.keys(value).length > 1) { - firstname = value.user.first_name; - lastname = value.user.last_name; - } else { - store.get(value).then(resource => { - this.value.push(resource); - this.render(); - }); - if (Array.isArray(this.value)) - this.value.splice(this.value.indexOf(value), 1); - else this.value = []; - return ''; - } - return `${firstname} ${lastname}`; - } - } - customElements.define('hdapp-author', HDAppAuthor); - }); - div - h1 New offers span Here you can find and post offers sib-display#offers-list.limiter( diff --git a/src/page-member-edit.pug b/src/page-member-edit.pug index 0049cf5..4a5a2c5 100644 --- a/src/page-member-edit.pug +++ b/src/page-member-edit.pug @@ -7,7 +7,7 @@ name='avatar', value='', ) - sib-form.edit-form.block( + sib-form.block( data-fields='user, avatar, bio, cell, jabberID, number, pseudo, skills, website', widget-user='hdapp-usereditinfo', range-cell=`${sdn}/cells/`, widget-skills='sib-form-multiple-dropdown', @@ -24,7 +24,7 @@ button#crop-img.btn.btn-link Valider -script. +//-script. class LDPFormImgUpload extends SIBWidget { get template() { return ` diff --git a/src/page-members.pug b/src/page-members.pug index 4df6383..3c57e39 100644 --- a/src/page-members.pug +++ b/src/page-members.pug @@ -1,56 +1,3 @@ -script. - document.addEventListener("WebComponentsReady", function(event) { - class HDAppUserInfo extends SIBDisplayLookupList { - get parentElement() {return "div"} - getTemplate(value, index) { - var firstname, lastname, email; - - if(typeof value == "object") - if(Object.keys(value).length > 1) { - firstname = value.first_name; - lastname = value.last_name; - email = value.email; - } - else { - store.get(value).then(resource => { - this.value.push(resource); - this.render(); - }); - if(Array.isArray(this.value))this.value.splice(this.value.indexOf(value), 1); - else this.value = []; - return ''; - } - return `
${firstname} ${lastname}
`; - // + `
${email}
`; - } - } - customElements.define('hdapp-userinfo', HDAppUserInfo); - - class HDAppCell extends SIBDisplayLookupList { - get parentElement() {return "div"} - getTemplate(value, index) { - var city, country; - - if(typeof value == "object") - if(Object.keys(value).length > 1) { - city = value.city; - country = value.country; - } - else { - store.get(value).then(resource => { - this.value.push(resource); - this.render(); - }); - if(Array.isArray(this.value))this.value.splice(this.value.indexOf(value), 1); - else this.value = []; - return ''; - } - return `${city} - ${country}`; - } - } - customElements.define("hdapp-usercell", HDAppCell); - }); - div h1 Members sib-display#profiles-list( diff --git a/src/page-projects.pug b/src/page-projects.pug index 880d10b..6b40b47 100644 --- a/src/page-projects.pug +++ b/src/page-projects.pug @@ -1,21 +1,3 @@ -script. - document.addEventListener('WebComponentsReady', function(event) { - class HDAppClient extends SIBWidget { - get template() { - - return ``; - } - - render() { - store.get(this.value).then( (value) => { - this._value = value; - this.innerHTML = this.template; - }); - } - } - customElements.define("hdapp-client", HDAppClient); - }); - #projects h1 Projects sib-display( diff --git a/src/scripts/hd-widgets.js b/src/scripts/hd-widgets.js new file mode 100644 index 0000000..2c6c401 --- /dev/null +++ b/src/scripts/hd-widgets.js @@ -0,0 +1,112 @@ +document.addEventListener('WebComponentsReady', function(event) { + class HDAppUserInfo extends SIBDisplayLookupList { + get parentElement() { + return 'div'; + } + getTemplate(value, index) { + var firstname, lastname, email; + + if (typeof value == 'object') + if (Object.keys(value).length > 1) { + firstname = value.first_name; + lastname = value.last_name; + email = value.email; + } else { + store.get(value).then(resource => { + this.value.push(resource); + this.render(); + }); + if (Array.isArray(this.value)) + this.value.splice(this.value.indexOf(value), 1); + else this.value = []; + return ''; + } + return `
${firstname} ${lastname}
`; + // + `
${email}
`; + } + } + customElements.define('hdapp-userinfo', HDAppUserInfo); + + class HDAppCell extends SIBDisplayLookupList { + get parentElement() { + return 'div'; + } + getTemplate(value, index) { + var city, country; + + if (typeof value == 'object') + if (Object.keys(value).length > 1) { + city = value.city; + country = value.country; + } else { + store.get(value).then(resource => { + this.value.push(resource); + this.render(); + }); + if (Array.isArray(this.value)) + this.value.splice(this.value.indexOf(value), 1); + else this.value = []; + return ''; + } + return `${city} - ${country}`; + } + } + customElements.define('hdapp-usercell', HDAppCell); + + class HDAppClient extends SIBWidget { + get template() { + return ``; + } + + render() { + store.get(this.value).then(value => { + this._value = value; + this.innerHTML = this.template; + }); + } + } + customElements.define('hdapp-client', HDAppClient); + + class HDAppMember extends SIBWidget { + get template() { + return ` +
+ +
+ `; + } + + render() { + store.get(this.value).then(value => { + this._value = value; + this.innerHTML = this.template; + }); + } + } + customElements.define('hdapp-member', HDAppMember); + + class HDAppAuthor extends SIBDisplayLookupList { + get parentElement() { + return 'div'; + } + getTemplate(value, index) { + var firstname, lastname; + if (typeof value == 'object') + if (Object.keys(value).length > 1) { + firstname = value.user.first_name; + lastname = value.user.last_name; + } else { + store.get(value).then(resource => { + this.value.push(resource); + this.render(); + }); + if (Array.isArray(this.value)) + this.value.splice(this.value.indexOf(value), 1); + else this.value = []; + return ''; + } + return `${firstname} ${lastname}`; + } + } + customElements.define('hdapp-author', HDAppAuthor); +}); diff --git a/src/styles/form.scss b/src/styles/form.scss index 4caa2ea..56ae5b6 100644 --- a/src/styles/form.scss +++ b/src/styles/form.scss @@ -1,7 +1,8 @@ //button, checkbox, color, date, datetime-local, email, file, hidden, image, month, number, password, radio, range, reset, search, submit, tel, text, time, url, week, datetime .form-view{ - @extend %frame + @extend %frame; + padding: 1em; } sib-form.inline form { @@ -12,7 +13,6 @@ sib-form.inline form { } sib-form.block { display: block; - padding: 1em; > form { > * { display: block;