From 6d3ede344b4f41bbcc120a9858b55ff1f70e30f6 Mon Sep 17 00:00:00 2001 From: Conrad S Date: Fri, 17 Feb 2017 14:36:37 -0500 Subject: [PATCH 01/10] Initial formatting for link bar and other components --- src/components/BuildingOverview/index.js | 52 +++++++----- src/components/DocumentCardViewer/index.js | 2 +- src/components/LinkBarDetail/index.js | 97 ++++++++++++++++++++++ src/components/LinkBarDetail/styles.css | 0 src/containers/Building/index.js | 4 +- 5 files changed, 133 insertions(+), 22 deletions(-) create mode 100644 src/components/LinkBarDetail/index.js create mode 100644 src/components/LinkBarDetail/styles.css diff --git a/src/components/BuildingOverview/index.js b/src/components/BuildingOverview/index.js index df9a359b..b62b6e00 100644 --- a/src/components/BuildingOverview/index.js +++ b/src/components/BuildingOverview/index.js @@ -19,27 +19,41 @@ export default class BuildingOverview extends Component { const { building } = this.props; return ( -
-
-

- {building.address} -

-
    -
  • Zipcode: {building.zipcode}
  • -
  • BBL: {building.bbl}
  • -
  • Building ID: {building.building_id}
  • -
  • Lot ID: {building.lot_id}
  • -
  • Borough: {building.borough}
  • +
    +
    + +
    +
    +
    +
    +
    +

    + {building.address} +

    +
      +
    • Zipcode: {building.zipcode}
    • +
    • BBL: {building.bbl}
    • +
    • Building ID: {building.building_id}
    • +
    • Lot ID: {building.lot_id}
    • +
    • Borough: {building.borough}
    • +
    +
    +
    +
    + +
    -
    ); } diff --git a/src/components/DocumentCardViewer/index.js b/src/components/DocumentCardViewer/index.js index a17ec11a..75221981 100644 --- a/src/components/DocumentCardViewer/index.js +++ b/src/components/DocumentCardViewer/index.js @@ -87,7 +87,7 @@ export default class DocumentCardViewer extends Component { render() { const { error, uploadError } = this.props.documents; return ( -
    +
    +
    + {`${building.address}, + ${building.borough}, + ${building.zipcode}`} +
    +
    +
    + + + + + + + + + + + + + + + +
    BBL{building.bbl}
    Building ID{building.building_id}
    Lot ID{building.lot_id}
    +
    +
    + + +
    +
    Steve Jobs
    + steve@apple.com +
    (123) 456-7890
    +
    + +
    +
      +
    • + + {/* All of this SVGs will need to replaced with InlineSVG, an external library. Then we can link to files */} + + + + + + + + + + Overview + +
    • +
    • + + + + + + + + + + + Dimensions + +
    • +
    • + + + + + + + + Utilities + +
    • +
    +
    + + { children } +
    + ); +} + +SideBarDetail.propTypes = { + children: PropTypes.element, + building: buildingDetailPropType, +}; diff --git a/src/components/LinkBarDetail/styles.css b/src/components/LinkBarDetail/styles.css new file mode 100644 index 00000000..e69de29b diff --git a/src/containers/Building/index.js b/src/containers/Building/index.js index 976fcf5b..2f783ead 100644 --- a/src/containers/Building/index.js +++ b/src/containers/Building/index.js @@ -33,15 +33,15 @@ class Building extends Component { return (
    -
    +
    {`There was a error retrieving the building | ${error.message}`}
    - { mainContent }
    + { mainContent }
    ); } -- GitLab From 22d84c26ed3b96eb0461cbbf044fabbfa45cf7c9 Mon Sep 17 00:00:00 2001 From: Conrad S Date: Fri, 17 Feb 2017 16:21:33 -0500 Subject: [PATCH 02/10] Add links --- src/components/BuildingOverview/index.js | 21 ++-- src/components/LinkBarDetail/index.js | 123 +++++++---------------- 2 files changed, 52 insertions(+), 92 deletions(-) diff --git a/src/components/BuildingOverview/index.js b/src/components/BuildingOverview/index.js index b62b6e00..fff25ad7 100644 --- a/src/components/BuildingOverview/index.js +++ b/src/components/BuildingOverview/index.js @@ -1,6 +1,7 @@ import React, { Component, PropTypes } from 'react'; import documentsPropType from '../../containers/Documents/propTypes'; import DocumentCardViewer from '../../components/DocumentCardViewer'; +import LinkBarDetail from '../../components/LinkBarDetail'; import './styles.css'; @@ -17,17 +18,21 @@ export default class BuildingOverview extends Component { render() { const { building } = this.props; + // const test = [{name: "Test", rel_url: "dimensions"}]; return (
    -
    - -
    -
    +
    diff --git a/src/components/LinkBarDetail/index.js b/src/components/LinkBarDetail/index.js index 69018bb6..82b524b4 100644 --- a/src/components/LinkBarDetail/index.js +++ b/src/components/LinkBarDetail/index.js @@ -1,97 +1,52 @@ import React, { PropTypes } from 'react'; -import { Link, browserHistory } from 'react-router'; +import { Link } from 'react-router'; import './styles.css'; import buildingDetailPropType from '../../containers/Building/propTypes'; -/* eslint-disable */ -export default function LinkBarDetail({ building, children }) { - const rootURL = `/buildings/${building.building_id}`; - return ( -
    -
    - {`${building.address}, - ${building.borough}, - ${building.zipcode}`} -
    -
    -
    - - - - - - - - - - - - - - - -
    BBL{building.bbl}
    Building ID{building.building_id}
    Lot ID{building.lot_id}
    -
    -
    - +const generateBreadcrumbs = (rootURL, breadcrumbs) => { + const breadcrumbList = breadcrumbs.map(val => ( + ( +
  • + {val.name} +
  • + ) + )); + return breadcrumbList; +}; -
    -
    Steve Jobs
    - steve@apple.com -
    (123) 456-7890
    -
    +const generateLinks = (rootURL, links) => { + const breadcrumbList = links.map(val => ( + ( + + {val.name} + + ) + )); + return breadcrumbList; +}; -
    -
      -
    • - - {/* All of this SVGs will need to replaced with InlineSVG, an external library. Then we can link to files */} - - - - - - - - - - Overview - -
    • -
    • - - - - - - - - - - - Dimensions - -
    • -
    • - - - - - - - - Utilities - -
    • -
    +export default function LinkBarDetail({ building, breadcrumbs, links }) { + const rootURL = `/buildings/${building.building_id}`; + return ( +
    +
      + {generateBreadcrumbs(rootURL, breadcrumbs)} +
    +
    + {generateLinks(rootURL, links)}
    - - { children }
    ); } -SideBarDetail.propTypes = { - children: PropTypes.element, +const urlObject = PropTypes.shape({ + name: PropTypes.string, + url: PropTypes.string, + tags: PropTypes.string, +}); + +LinkBarDetail.propTypes = { building: buildingDetailPropType, + breadcrumbs: PropTypes.arrayOf(urlObject), + links: PropTypes.arrayOf(urlObject), }; -- GitLab From b42f071da249a55052946cb03961663051f5a2cd Mon Sep 17 00:00:00 2001 From: Conrad S Date: Mon, 20 Feb 2017 09:41:57 -0500 Subject: [PATCH 03/10] Fix link to project --- src/components/ProjectCard/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/ProjectCard/index.js b/src/components/ProjectCard/index.js index 317c3e96..68948851 100644 --- a/src/components/ProjectCard/index.js +++ b/src/components/ProjectCard/index.js @@ -16,7 +16,7 @@ const ProjectCard = (props) => {
    { project.state } { project.name } -- GitLab From 48e59925d4dec0b9c01edac270d5588eba3d1971 Mon Sep 17 00:00:00 2001 From: Conrad S Date: Mon, 20 Feb 2017 09:59:21 -0500 Subject: [PATCH 04/10] Make last link in the breadcrumbs not generate --- src/components/LinkBarDetail/index.js | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/components/LinkBarDetail/index.js b/src/components/LinkBarDetail/index.js index 886a8ef0..96f797ae 100644 --- a/src/components/LinkBarDetail/index.js +++ b/src/components/LinkBarDetail/index.js @@ -4,25 +4,32 @@ import './styles.css'; import buildingDetailPropType from '../../containers/Building/propTypes'; const generateBreadcrumbs = (rootURL, breadcrumbs) => { - const breadcrumbList = breadcrumbs.map(val => ( - ( + const breadcrumbList = breadcrumbs.map((val, index) => { + if (index < breadcrumbs.length - 1) { + return ( +
  • + {val.name} +
  • + ); + } + return (
  • - {val.name} + {val.name}
  • - ) - )); + ); + }); return breadcrumbList; }; const generateLinks = (rootURL, links) => { - const breadcrumbList = links.map(val => ( + const linkList = links.map(val => ( ( {val.name} ) )); - return breadcrumbList; + return linkList; }; export default function LinkBarDetail({ building, breadcrumbs, links }) { -- GitLab From a134c1423683e02276080fa3c239cdf622724631 Mon Sep 17 00:00:00 2001 From: Conrad S Date: Mon, 20 Feb 2017 10:00:38 -0500 Subject: [PATCH 05/10] Remove hardcoded data --- src/containers/Building/sagas.js | 27 +-------------------------- 1 file changed, 1 insertion(+), 26 deletions(-) diff --git a/src/containers/Building/sagas.js b/src/containers/Building/sagas.js index 0b989c4a..76583421 100644 --- a/src/containers/Building/sagas.js +++ b/src/containers/Building/sagas.js @@ -39,32 +39,7 @@ function* getProjects(action) { const buildingId = action.buildingId; const res = { buildingId, - data: [ - { - client_id: 5, - created: '2016-04-29T19:25:08.509790+00:00', - id: 6, - name: '2324 Pitkin Avenue', - sales_force_id: '00661000009yx9lAAA', - slug: '2324-pitkin-avenue-6', - state: 'pending', - updated: null, - program_type: 'CBRA', - building_id: buildingId, - }, - { - client_id: 10, - created: '2016-04-29T19:25:08.509790+00:00', - id: 7, - name: '2324 Pitkin Avenue', - sales_force_id: '00661000009yx9lAAA', - slug: '2324-pitkin-avenue-6', - state: 'pending', - updated: null, - program_type: 'BUILD HEALTH', - building_id: buildingId, - }, - ], + data: [], }; -- GitLab From d2429e697de366aaad1a61db0b2f5371ddeff441 Mon Sep 17 00:00:00 2001 From: Conrad S Date: Mon, 20 Feb 2017 10:02:41 -0500 Subject: [PATCH 06/10] Comment out external links to salesforce --- src/components/BuildingOverview/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/BuildingOverview/index.js b/src/components/BuildingOverview/index.js index b1ee8ce8..f457aa97 100644 --- a/src/components/BuildingOverview/index.js +++ b/src/components/BuildingOverview/index.js @@ -46,9 +46,9 @@ export default class BuildingOverview extends Component { { name: 'Overview', url: '' }, ]} links={[ - { name: 'Sales Force', url: '//google.com', tags: '' }, + /* { name: 'Sales Force', url: '//google.com', tags: '' }, { name: 'Engineering', url: '//google.com', tags: 'engineering/' }, - { name: 'Finance', url: '//google.com', tags: 'finance/' }, + { name: 'Finance', url: '//google.com', tags: 'finance/' }, */ ]} />
    -- GitLab From 45ea2c24efc8536c5ed3357a725ddd05154fd4c9 Mon Sep 17 00:00:00 2001 From: Conrad S Date: Mon, 20 Feb 2017 10:04:50 -0500 Subject: [PATCH 07/10] Remove empty linkbardetail links from the Projects page --- src/components/Project/index.js | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/components/Project/index.js b/src/components/Project/index.js index d5b4b5b7..6f0d9b01 100644 --- a/src/components/Project/index.js +++ b/src/components/Project/index.js @@ -10,13 +10,9 @@ const Project = ({ buildingId, building }) => { building={building} breadcrumbs={[ { name: 'Overview', url: '' }, - { name: `Project ${buildingId}`, url: 'project' }, - ]} - links={[ - { name: 'Sales Force', url: '//google.com', tags: '' }, - { name: 'Engineering', url: '//google.com', tags: 'engineering/' }, - { name: 'Finance', url: '//google.com', tags: 'finance/' }, + { name: 'Project', url: 'null' }, ]} + links={[]} />
    -- GitLab From 9f797f32cc29bac0619f70e80094390665a37dc3 Mon Sep 17 00:00:00 2001 From: Conrad S Date: Mon, 20 Feb 2017 10:09:25 -0500 Subject: [PATCH 08/10] Remove added whitespace --- src/containers/Building/sagas.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/containers/Building/sagas.js b/src/containers/Building/sagas.js index 76583421..5e5852a9 100644 --- a/src/containers/Building/sagas.js +++ b/src/containers/Building/sagas.js @@ -40,7 +40,6 @@ function* getProjects(action) { const res = { buildingId, data: [], - }; yield put(projectsLoaded(res)); -- GitLab From b737138561b3356aebb24a7126eede62c4f6c097 Mon Sep 17 00:00:00 2001 From: Alessandro DiMarco Date: Mon, 20 Feb 2017 13:34:08 -0500 Subject: [PATCH 09/10] Add trailing '/' to url if none exist for project card --- src/components/ProjectCard/index.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/components/ProjectCard/index.js b/src/components/ProjectCard/index.js index 68948851..24668892 100644 --- a/src/components/ProjectCard/index.js +++ b/src/components/ProjectCard/index.js @@ -2,7 +2,7 @@ import React, { PropTypes } from 'react'; import { Link, browserHistory } from 'react-router'; import { projectPropTypes } from '../../containers/Building/propTypes'; -/* eslint-disable jsx-a11y/href-no-hash */ + const ProjectCard = (props) => { const { project } = props; let date = ''; @@ -12,11 +12,17 @@ const ProjectCard = (props) => { date = `Created on ${new Date(project.created)}`; } + // FIXME: add trailing / to url if none exist without if statement + let rootURL = browserHistory.getCurrentLocation().pathname; + if (rootURL.slice(-1) !== '/') { + rootURL += '/'; + } + return (
    { project.state } { project.name } -- GitLab From bfb2914d572fb6cd4e5f1ebfd90674b874f2b709 Mon Sep 17 00:00:00 2001 From: Alessandro DiMarco Date: Mon, 20 Feb 2017 18:29:27 -0500 Subject: [PATCH 10/10] Acitvate sidebar urls without trailing / --- src/components/SideBarDetail/index.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/SideBarDetail/index.js b/src/components/SideBarDetail/index.js index a311b19f..c0bbef12 100644 --- a/src/components/SideBarDetail/index.js +++ b/src/components/SideBarDetail/index.js @@ -4,7 +4,8 @@ import './styles.css'; import buildingDetailPropType from '../../containers/Building/propTypes'; const isActive = (url) => { - if (url === browserHistory.getCurrentLocation().pathname) { + if (url === browserHistory.getCurrentLocation().pathname || + url === `${browserHistory.getCurrentLocation().pathname}/`) { return 'active'; } return ''; -- GitLab