This commit is contained in:
Christophe Coenraets 2018-05-03 07:04:00 -04:00
Родитель 9baf785adf
Коммит 6b2225cfae
102 изменённых файлов: 8 добавлений и 2161 удалений

Просмотреть файл

@ -16,7 +16,6 @@
<tabs>Property__c</tabs>
<tabs>Broker__c</tabs>
<tabs>standard-Contact</tabs>
<tabs>Command_Center</tabs>
<tabs>Einstein_Vision</tabs>
<tabs>standard-report</tabs>
<tabs>standard-Dashboard</tabs>

Просмотреть файл

@ -1,6 +0,0 @@
<aura:documentation>
<aura:description>Documentation</aura:description>
<aura:example name="ExampleName" ref="exampleComponentName" label="Label">
Example Description
</aura:example>
</aura:documentation>

Просмотреть файл

@ -1,55 +0,0 @@
<aura:component implements="flexipage:availableForAllPageTypes" controller="PropertyController" access="global">
<aura:attribute name="fullScreen" type="Boolean" default="false" />
<aura:attribute name="atRiskProperties" type="Property__c[]" />
<aura:handler name="init" value="{! this }" action="{! c.onInit }"/>
<article class="slds-card">
<div class="slds-grid slds-einstein-header slds-card__header">
<header class="slds-media slds-media_center slds-has-flexi-truncate">
<div class="slds-grid slds-grid_vertical-align-center slds-size_3-of-4 slds-medium-size_2-of-3">
<div class="slds-media__body">
<h2 class="slds-truncate" title="Einstein (10+)">
<a href="javascript:void(0);" class="slds-card__header-link" title="Einstein (10+)">
<span class="slds-text-heading_small">Smart Actions</span>
</a>
</h2>
</div>
</div>
<div class="slds-einstein-header__figure slds-size_1-of-4 slds-medium-size_1-of-3"></div>
</header>
</div>
<div class="slds-card__body slds-card__body_inner">
Einstein Prediction Builder determined the following properties are at risk and will stay on the market for too long. Click Optimize to address the issues.
<aura:iteration items="{!v.atRiskProperties}" var="property" indexVar="i">
<lightning:layout verticalAlign="center" class="row">
<lightning:layoutItem>
<img src="{!property.Thumbnail__c}" class="property-pic" />
</lightning:layoutItem>
<lightning:layoutItem flexibility="grow">
{!property.Address__c}, {!property.City__c}
<p><lightning:formattedNumber value="{!property.Price__c}" style="currency" currencyCode="USD" minimumFractionDigits="0" maximumFractionDigits="0"/></p>
{!property.Predicted_Days_On_Market__c}
</lightning:layoutItem>
<lightning:layoutItem>
<lightning:button label="Optimize" onclick="{!c.optimize}" name="{!property.Id}"/>
</lightning:layoutItem>
</lightning:layout>
</aura:iteration>
</div>
</article>
<aura:if isTrue="{!v.fullScreen==true}">
<div role="dialog" tabindex="-1" aria-labelledby="header43" class="slds-modal slds-fade-in-open">
<div class="slds-modal__container slds-card">
<lightning:flow aura:id="flow" onstatuschange="{!c.flowStatusChange}"/>
</div>
<!-- <div class="btn slds-modal__close close x-large">
<lightning:buttonIcon variant="bare" onclick="{!c.closeDialog}" size="large" iconName="utility:close" />
</div> -->
</div>
<div class="slds-backdrop slds-backdrop--open"></div>
</aura:if>
</aura:component>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="urn:metadata.tooling.soap.sforce.com" fqn="ActionList">
<apiVersion>42.0</apiVersion>
<description>A Lightning Component Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,35 +0,0 @@
.THIS {
}
.THIS .slds-modal__container {
height: 500px;
width: 90%;
max-width: initial;
margin: auto;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
.THIS .slds-modal {
}
.THIS .slds-modal__close {
position: absolute;
top: 100px;
right: 5%;
}
.THIS .slds-card__body_inner .slds-grid {
margin-top: 12px;
}
.THIS .property-pic {
height: 50px;
width: 50px;
border: none;
border-radius: 4px;
margin-right: 8px;
}

Просмотреть файл

@ -1,3 +0,0 @@
<design:component label="Smart Actions">
</design:component>

Просмотреть файл

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="120px" height="120px" viewBox="0 0 120 120" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M120,108 C120,114.6 114.6,120 108,120 L12,120 C5.4,120 0,114.6 0,108 L0,12 C0,5.4 5.4,0 12,0 L108,0 C114.6,0 120,5.4 120,12 L120,108 L120,108 Z" id="Shape" fill="#2A739E"/>
<path d="M77.7383308,20 L61.1640113,20 L44.7300055,63.2000173 L56.0543288,63.2000173 L40,99.623291 L72.7458388,54.5871812 L60.907727,54.5871812 L77.7383308,20 Z" id="Path-1" fill="#FFFFFF"/>
</g>
</svg>

До

Ширина:  |  Высота:  |  Размер: 661 B

Просмотреть файл

@ -1,24 +0,0 @@
({
onInit : function(component, event, helper) {
var property = component.get("v.property");
var action = component.get("c.getAtRiskProperties");
action.setCallback(this, function(response){
component.set("v.atRiskProperties", response.getReturnValue());
});
$A.enqueueAction(action);
},
optimize : function(component, event, helper) {
var propertyId = event.getSource().get("v.name");
component.set("v.fullScreen", true);
var flow = component.find("flow");
flow.startFlow("Optimize_Listing", [{name: 'recordId', type: 'String', value: propertyId}]);
},
flowStatusChange : function(component, event, helper) {
if (event.getParam("status") === "FINISHED") {
component.set("v.fullScreen", false);
}
}
})

Просмотреть файл

@ -1,4 +0,0 @@
({
helperMethod : function(component) {
},
})

Просмотреть файл

@ -1,5 +0,0 @@
({
// Your renderer method overrides go here
})

Просмотреть файл

@ -1,69 +0,0 @@
<aura:component implements="force:hasRecordId,flexipage:availableForAllPageTypes"
access="global">
<!--
A component used to predict the number of days a property will stay on the market based on the asking price.
The prediction service is stubbed in this version of the component.
-->
<ltng:require scripts="{!$Resource.countup7}" />
<aura:attribute name="recordId" type="Id"/>
<aura:attribute name="property" type="Property__c"/>
<aura:attribute name="price" type="Long"/>
<aura:attribute name="formattedPrice" type="String"/>
<aura:attribute name="newPrice" type="Long"/>
<aura:attribute name="days" type="Integer" default="0"/>
<aura:attribute name="color" type="String" default="green"/>
<aura:attribute name="waiting" type="Boolean" default="false"/>
<force:recordData aura:id="propertyService"
recordId="{!v.recordId}"
targetFields="{!v.property}"
fields="['Id', 'Price__c', 'Assessed_Value__c', 'Address__c', 'City__c', 'Date_Listed__c']"
mode="EDIT"
recordUpdated="{!c.onRecordUpdated}"/>
<aura:handler event="ltng:selectSObject" action="{!c.onRecordSelected}"/>
<lightning:card >
<aura:set attribute="title">
<lightning:icon iconName="utility:setup_assistant_guide" size="small"/>
Days on Market Estimator
</aura:set>
<aura:set attribute="actions">
<lightning:button label="Save as New Price" onclick="{!c.onSavePriceBtnClicked}"/>
</aura:set>
<aura:if isTrue="{!v.property==undefined}">
<div aura:id="selectSection" class="select slds-text-color--weak">
Select a property
</div>
</aura:if>
<aura:if isTrue="{!v.property!=undefined}">
<div aura:id="dataPanel">
<div class="summary">
{!v.property.Address__c},&nbsp;{!v.property.City__c} ・ Current Price: <lightning:formattedNumber value="{!v.property.Price__c}" style="currency" currencyCode="USD"/>
</div>
<div class="container">
<div class="left">
<h1>{!v.formattedPrice}</h1>
<input class="slds-slider__range" min='{!v.property.Price__c * 0.7}' max='{!v.property.Price__c * 1.3}' type='range' value='{!v.property.Price__c}'
step="1000" onchange='{!c.onPriceChange}' oninput='{!c.onPriceInput}'/>
</div>
<div class="right">
<h1><span aura:id="days"></span> days</h1>
<div aura:id="bar" style="{! 'width:' + v.days / 90 * 100 + '%;background-color:' + v.color }" class="bar"/>
</div>
</div>
</div>
</aura:if>
<aura:if isTrue="{! v.waiting }">
<lightning:spinner size="large"/>
</aura:if>
</lightning:card>
</aura:component>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>41.0</apiVersion>
<description>A Lightning Component Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,80 +0,0 @@
.THIS {
position:relative;
}
.THIS .slds-card__body {
height: 140px;
}
.THIS h1 {
font-weight: 300;
color: #0070D2;
font-size: 24px;
}
.THIS .hidden {
display: none;
}
.THIS .container {
display: flex;
align-items: center;
}
.THIS .left {
text-align: center;
width: 160px;
margin-right: 20px
}
.THIS .right {
border-left: solid 1px #DDDDDD;
text-align: center;
flex: 1;
}
.THIS .slider {
display: block;
width:100%;
margin: 8px 0 16px 0;
}
.THIS .bar {
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
height: 60px;
width: 1px;
background-color: green;
transition: all 2s ease-in-out;
border-radius: 0 4px 4px 0;
margin-bottom: 8px;
}
.THIS .slds-card__body {
padding: 0 20px;
}
.THIS .slds-icon-standard-solution {
background-color: transparent;
}
.THIS .slds-icon-standard-solution svg {
fill: #54698D;
}
.THIS .select {
padding-top: 50px;
text-align: center;
}
.THIS .summary {
width: 100%;
text-align: left;
padding-top: 4px;
padding-bottom: 8px;
}
.THIS lightning-slider .slds-slider__value,
.THIS lightning-slider label {
display: none;
}

Просмотреть файл

@ -1,3 +0,0 @@
<design:component label="Days on Market Estimator">
</design:component>

Просмотреть файл

@ -1,41 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="88.316px" height="88.318px" viewBox="0 0 88.316 88.318" enable-background="new 0 0 88.316 88.318" xml:space="preserve">
<g id="Layer_1_copy">
<path fill="#EA74A2" d="M88.316,73.268c0,8.312-6.738,15.051-15.054,15.051H15.05C6.737,88.319,0,81.581,0,73.268V15.052
C0,6.74,6.737,0,15.05,0h58.215c8.312,0,15.054,6.74,15.054,15.052L88.316,73.268L88.316,73.268z"/>
</g>
<g id="Layer_5">
<g>
<path fill="#FFFFFF" d="M77.931,50.581H40.867c-0.722,0-1.354,0.633-1.354,1.356v22.146c0,1.99,1.627,3.616,3.615,3.616h32.543
c1.99,0,3.616-1.626,3.616-3.616V51.937C79.287,51.214,78.654,50.581,77.931,50.581z M53.072,70.469
c0,0.544-0.362,0.903-0.904,0.903h-3.616c-0.543,0-0.902-0.359-0.902-0.903v-3.615c0-0.543,0.359-0.904,0.902-0.904h3.616
c0.542,0,0.904,0.361,0.904,0.904V70.469z M53.072,61.427c0,0.544-0.362,0.904-0.904,0.904h-3.616
c-0.543,0-0.902-0.36-0.902-0.904v-3.615c0-0.543,0.359-0.903,0.902-0.903h3.616c0.542,0,0.904,0.36,0.904,0.903V61.427z
M62.111,70.469c0,0.544-0.362,0.903-0.903,0.903h-3.616c-0.543,0-0.903-0.359-0.903-0.903v-3.615c0-0.543,0.36-0.904,0.903-0.904
h3.616c0.541,0,0.903,0.361,0.903,0.904V70.469z M62.111,61.427c0,0.544-0.362,0.904-0.903,0.904h-3.616
c-0.543,0-0.903-0.36-0.903-0.904v-3.615c0-0.543,0.36-0.903,0.903-0.903h3.616c0.541,0,0.903,0.36,0.903,0.903V61.427z
M71.151,70.469c0,0.544-0.362,0.903-0.904,0.903h-3.615c-0.542,0-0.903-0.359-0.903-0.903v-3.615
c0-0.543,0.361-0.904,0.903-0.904h3.615c0.542,0,0.904,0.361,0.904,0.904V70.469z M71.151,61.427c0,0.544-0.362,0.904-0.904,0.904
h-3.615c-0.542,0-0.903-0.36-0.903-0.904v-3.615c0-0.543,0.361-0.903,0.903-0.903h3.615c0.542,0,0.904,0.36,0.904,0.903V61.427z
M75.671,38.829h-4.52v-1.808c0-1.447-1.175-2.712-2.712-2.712c-1.447,0-2.712,1.175-2.712,2.712v1.808H53.072v-1.808
c0-1.447-1.175-2.712-2.712-2.712c-1.447,0-2.712,1.175-2.712,2.712v1.808h-4.521c-1.987,0-3.616,1.628-3.616,3.616v2.261
c0,0.722,0.634,1.355,1.355,1.355H77.93c0.723,0,1.354-0.635,1.354-1.355v-2.261C79.287,40.457,77.661,38.829,75.671,38.829z"/>
</g>
<path fill="#FFFFFF" d="M32.7,30.25c-0.4-0.398-1-0.398-1.4,0L7.4,54.15c-1.2,1.199-1.2,3,0,4.199s3,1.199,4.2,0L35.5,34.45
c0.4-0.4,0.4-1,0-1.4L32.7,30.25z"/>
<path fill="#FFFFFF" d="M39.7,30.25l3.2-3.2c0.6-0.6,0.6-1.5,0-2.1l-2.102-2.1c-0.6-0.602-1.5-0.602-2.1,0l-3.2,3.198
c-0.399,0.4-0.399,1,0,1.4l2.8,2.8C38.7,30.649,39.3,30.649,39.7,30.25z"/>
<path fill="#FFFFFF" d="M14.9,20.85c3.8,1.198,6.8,4.1,8,8c0.2,0.6,1,0.6,1.2,0c1.199-3.802,4.1-6.802,8-8
c0.601-0.201,0.601-1,0-1.201c-3.801-1.199-6.801-4.101-8-8c-0.2-0.601-1-0.601-1.2,0c-1.2,3.8-4.101,6.8-8,8
C14.4,19.85,14.4,20.649,14.9,20.85z"/>
<path fill="#FFFFFF" d="M42.8,17.649c2.602,0.801,4.5,2.701,5.301,5.301c0.101,0.4,0.699,0.4,0.801,0c0.8-2.6,2.699-4.5,5.3-5.301
c0.399-0.101,0.399-0.699,0-0.799c-2.601-0.802-4.5-2.701-5.3-5.302c-0.102-0.399-0.7-0.399-0.801,0
c-0.801,2.601-2.699,4.5-5.301,5.302C42.4,16.95,42.4,17.55,42.8,17.649z"/>
<path fill="#FFFFFF" d="M42.875,34.91c3.8,1.199,6.8,4.1,8,8c0.201,0.6,1,0.6,1.201,0c1.199-3.801,4.1-6.801,7.999-8
c0.601-0.201,0.601-1,0-1.201c-3.8-1.199-6.8-4.1-7.999-8c-0.201-0.6-1-0.6-1.201,0c-1.199,3.801-4.1,6.801-8,8
C42.375,33.91,42.375,34.709,42.875,34.91z"/>
</g>
</svg>

До

Ширина:  |  Высота:  |  Размер: 3.5 KiB

Просмотреть файл

@ -1,41 +0,0 @@
({
onRecordSelected : function(component, event) {
var id = event.getParam("recordId");
component.set("v.recordId", id);
var service = component.find("propertyService");
service.reloadRecord();
},
onRecordUpdated : function(component, event, helper) {
var changeType = event.getParams().changeType;
if (changeType === "CHANGED") {
var service = component.find("propertyService");
service.reloadRecord();
} else {
var property = component.get("v.property");
helper.setFormattedPrice(component, property.Price__c);
helper.calculateDays(component, helper, property.Price__c);
}
},
// Sliding price range input
onPriceInput: function(component, event, helper) {
helper.setFormattedPrice(component, event.target.value);
},
// Releasing price range input
onPriceChange: function(component, event, helper) {
var property = component.get("v.property");
var newPrice = event.target.value;
property.Price__c = newPrice;
helper.calculateDays(component, helper, newPrice);
},
onSavePriceBtnClicked : function(component) {
var property = component.get("v.property");
if (property) {
component.find("propertyService").saveRecord();
}
}
})

Просмотреть файл

@ -1,55 +0,0 @@
({
setFormattedPrice: function(component, price) {
var formattedPrice = Number(price).toLocaleString("en-US", {style: "currency", currency: 'USD'});
component.set("v.formattedPrice", formattedPrice);
},
calculateDays: function(component, helper, price) {
var property = component.get("v.property");
var ellapsed = (new Date() - new Date(property.Date_Listed__c)) / 24 / 60 / 60 / 1000;
var currentDays = component.get("v.days") || ellapsed;
component.set("v.waiting", true);
helper.predictDaysOnMarket(component, property, price, function(days) {
if (component.isValid()) {
component.set("v.waiting", false);
var color = '#00716B';
if (days > 60) {
color = '#C23934';
} else if (days > 30) {
color = '#FFB75D';
}
component.set("v.color", color);
var daysEl = component.find("days").getElement();
var daysAnim = new CountUp(daysEl, currentDays, days, 0, 2);
daysAnim.start();
component.set("v.days", days);
}
});
},
predictDaysOnMarket: function(component, property, price, callback) {
// Stubbed service call. Make call to PredictionIO here.
// More info: http://www.dreamhouseapp.io/pio/
window.setTimeout($A.getCallback(function() {
if (component.isValid()) {
var days;
var assessedValue = property.Assessed_Value__c;
if (price < assessedValue) {
days = 2;
} else if (price < assessedValue * 1.1) {
days = price / assessedValue * 10;
} else if (price < assessedValue * 1.2) {
days = price / assessedValue * 30;
} else if (price < assessedValue * 1.3) {
days = price / assessedValue * 40;
} else if (price < assessedValue * 1.4) {
days = price / assessedValue * 60;
} else {
days = 90;
}
callback(days);
}
}), 300);
}
})

Просмотреть файл

@ -1,6 +0,0 @@
<aura:documentation>
<aura:description>Documentation</aura:description>
<aura:example name="ExampleName" ref="exampleComponentName" label="Label">
Example Description
</aura:example>
</aura:documentation>

Просмотреть файл

@ -1,33 +0,0 @@
<aura:component implements="lightning:availableForFlowScreens" controller="PropertyController" access="global">
<aura:attribute name="recordId" type="String" access="global" />
<aura:attribute name="columns" type="List" />
<aura:attribute name="comparableProperties" type="List" />
<aura:handler name="init" value="{! this }" action="{! c.onInit }"/>
<div>
<div class="slds-text-heading_medium slds-align_absolute-center title">Let's get this property moving!</div>
<div class="slds-text-heading_small slds-align_absolute-center title">Step 1: Compare Similar Properties</div>
<lightning:progressIndicator currentStep="step1">
<lightning:progressStep label="Comparable Listings" value="step1" />
<lightning:progressStep label="Adjust Price" value="step2" />
<lightning:progressStep label="Add Pictures" value="step3" />
<lightning:progressStep label="Complete" value="step4" />
</lightning:progressIndicator>
<lightning:layout >
<lightning:layoutItem >
<c:PropertyView recordId="{!v.recordId}"/>
</lightning:layoutItem>
<lightning:layoutItem class="content">
<header>First, examine how your listing stacks up against comparable properties nearby. Here is a list of competitive listings:</header>
<lightning:datatable data="{!v.comparableProperties}" columns="{!v.columns}" keyField="Id" hideCheckboxColumn="true" />
</lightning:layoutItem>
</lightning:layout>
</div>
</aura:component>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="urn:metadata.tooling.soap.sforce.com" fqn="FlowScreenCompList">
<apiVersion>42.0</apiVersion>
<description>A Lightning Component Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,32 +0,0 @@
.THIS {
height: 400px;
}
.THIS header {
padding-bottom: 8px;
}
.THIS .content {
position: relative;
width: 100%;
padding-left: 24px;
}
.THIS .slds-progress {
margin-top: 8px;
margin-bottom: 36px;
}
.THIS lightning-datatable {
position: absolute;
left: 24px;
right: 0;
}
.THIS .title {
padding-top: 4px;
}
.THIS .slds-grid {
margin-top: 0 !important;
}

Просмотреть файл

@ -1,3 +0,0 @@
<design:component >
<design:attribute name="recordId" label="Record Id" />
</design:component>

Просмотреть файл

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="120px" height="120px" viewBox="0 0 120 120" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M120,108 C120,114.6 114.6,120 108,120 L12,120 C5.4,120 0,114.6 0,108 L0,12 C0,5.4 5.4,0 12,0 L108,0 C114.6,0 120,5.4 120,12 L120,108 L120,108 Z" id="Shape" fill="#2A739E"/>
<path d="M77.7383308,20 L61.1640113,20 L44.7300055,63.2000173 L56.0543288,63.2000173 L40,99.623291 L72.7458388,54.5871812 L60.907727,54.5871812 L77.7383308,20 Z" id="Path-1" fill="#FFFFFF"/>
</g>
</svg>

До

Ширина:  |  Высота:  |  Размер: 661 B

Просмотреть файл

@ -1,25 +0,0 @@
({
onInit: function(component, event, helper) {
component.set('v.columns', [
{label: 'Address', fieldName: 'Address__c', type: 'text', initialWidth: 150},
{label: 'City', fieldName: 'City__c', type: 'text'},
{label: 'Zip', fieldName: 'Zip__c', type: 'text'},
{label: 'Beds', fieldName: 'Beds__c', type: 'number'},
{label: 'Baths', fieldName: 'Baths__c', type: 'number'},
{label: 'Price', fieldName: 'Price__c', type: 'currency'},
]);
var action = component.get("c.getComparableProperties");
action.setStorable();
action.setParams({
propertyId: component.get("v.recordId")
});
action.setCallback(this, function(response){
component.set("v.comparableProperties", response.getReturnValue());
});
$A.enqueueAction(action);
},
})

Просмотреть файл

@ -1,16 +0,0 @@
({
loadComparableRentals : function(component) {
var properties = [
{Id: "1", Address__c: "121 N Halsted St", City__c: "Boston", Zip__c: "61633", Beds__c: 3, Baths__c: 2, Sqft__c: 800, Price__c: 565000, Days_Prediction__c: 7},
{Id: "2", Address__c: "303 W Bittersweet Pl", City__c: "Boston", Zip__c: "60622", Beds__c: 3, Baths__c: 2, Sqft__c: 1250, Price__c: 550000, Days_Prediction__c: 8},
{Id: "3", Address__c: "443 S Hermitage Ave", City__c: "Boston", Zip__c: "62633", Beds__c: 3, Baths__c: 2, Sqft__c: 1300, Price__c: 590000, Days_Prediction__c: 12},
{Id: "4", Address__c: "350 S Lake Shore Dr", City__c: "Boston", Zip__c: "60622", Beds__c: 3, Baths__c: 2, Sqft__c: 1300, Price__c: 575000, Days_Prediction__c: 3},
{Id: "5", Address__c: "66 E Roosevelet St", City__c: "Boston", Zip__c: "60533", Beds__c: 3, Baths__c: 2, Sqft__c: 1250, Price__c: 580000, Days_Prediction__c: 2},
{Id: "6", Address__c: "720 S Archer Ave", City__c: "Boston", Zip__c: "60633", Beds__c: 3, Baths__c: 2, Sqft__c: 1500, Price__c: 560000, Days_Prediction__c: 12},
];
component.set('v.properties', properties);
}
})

Просмотреть файл

@ -1,5 +0,0 @@
({
// Your renderer method overrides go here
})

Просмотреть файл

@ -1,6 +0,0 @@
<aura:documentation>
<aura:description>Documentation</aura:description>
<aura:example name="ExampleName" ref="exampleComponentName" label="Label">
Example Description
</aura:example>
</aura:documentation>

Просмотреть файл

@ -1,44 +0,0 @@
<aura:component implements="lightning:availableForFlowScreens" access="global">
<aura:attribute name="recordId" type="String" default="" access="global" />
<aura:attribute name="property" type="Property__c" />
<force:recordData aura:id="propertyService" recordId="{!v.recordId}"
targetFields="{!v.property}" fields="['Id','Price__c']" />
<div>
<div class="slds-text-heading_medium slds-align_absolute-center title">Let's get this property moving!</div>
<div class="slds-text-heading_small slds-align_absolute-center title">Step 4: You are Done!</div>
<lightning:progressIndicator currentStep="step4">
<lightning:progressStep label="Comparable Rentals" value="step1" />
<lightning:progressStep label="Adjust Price" value="step2" />
<lightning:progressStep label="Add Pictures" value="step3" />
<lightning:progressStep label="Complete" value="step4" />
</lightning:progressIndicator>
<lightning:layout >
<lightning:layoutItem >
<c:PropertyView recordId="{!v.recordId}" />
</lightning:layoutItem>
<lightning:layoutItem flexibility="grow" class="content">
<div class="icon-container slds-align_absolute-center">
<lightning:icon iconName="action:approval" size="large" />
</div>
<header class="slds-text-heading_small slds-align_absolute-center">Congratulations! You fixed several issues related to this listing.</header>
<div class="slds-align_absolute-center">
<ul class="slds-list_dotted">
<li>You compared this listing to comparable properties in the neighborhood.</li>
<li>You set the price to <lightning:formattedNumber value="{!v.property.Price__c}" style="currency" currencyCode="USD" minimumFractionDigits="0" maximumFractionDigits="0"/></li>
<li>Interested buyers have been notified of the new price.</li>
<li>You have added pictures to the listing.</li>
</ul>
</div>
<div class="footer slds-align_absolute-center">This listing now compares favorably with similar properties in the neighborhood.</div>
</lightning:layoutItem>
</lightning:layout>
</div>
</aura:component>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="urn:metadata.tooling.soap.sforce.com" fqn="FlowScreenComplete">
<apiVersion>42.0</apiVersion>
<description>A Lightning Component Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,28 +0,0 @@
.THIS {
height: 400px;
}
.THIS header {
padding-bottom: 20px;
}
.THIS .content {
padding-left: 24px;
}
.THIS .slds-progress {
margin-top: 8px;
margin-bottom: 36px;
}
.THIS .icon-container {
padding-bottom: 20px;
}
.THIS .footer {
padding-top: 12px;
}
.THIS .title {
padding-top: 4px;
}

Просмотреть файл

@ -1,3 +0,0 @@
<design:component >
<design:attribute name="recordId" label="Property Id" />
</design:component>

Просмотреть файл

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="120px" height="120px" viewBox="0 0 120 120" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M120,108 C120,114.6 114.6,120 108,120 L12,120 C5.4,120 0,114.6 0,108 L0,12 C0,5.4 5.4,0 12,0 L108,0 C114.6,0 120,5.4 120,12 L120,108 L120,108 Z" id="Shape" fill="#2A739E"/>
<path d="M77.7383308,20 L61.1640113,20 L44.7300055,63.2000173 L56.0543288,63.2000173 L40,99.623291 L72.7458388,54.5871812 L60.907727,54.5871812 L77.7383308,20 Z" id="Path-1" fill="#FFFFFF"/>
</g>
</svg>

До

Ширина:  |  Высота:  |  Размер: 661 B

Просмотреть файл

@ -1,4 +0,0 @@
({
myMethod : function(component, event, helper) {
},
})

Просмотреть файл

@ -1,5 +0,0 @@
({
helperMethod : function() {
}
})

Просмотреть файл

@ -1,5 +0,0 @@
({
// Your renderer method overrides go here
})

Просмотреть файл

@ -1,6 +0,0 @@
<aura:documentation>
<aura:description>Documentation</aura:description>
<aura:example name="ExampleName" ref="exampleComponentName" label="Label">
Example Description
</aura:example>
</aura:documentation>

Просмотреть файл

@ -1,48 +0,0 @@
<aura:component implements="lightning:availableForFlowScreens" controller="PropertyController" access="global">
<aura:attribute name="recordId" type="String" default="" access="global" />
<aura:attribute name="files" type="Object[]" />
<aura:handler name="init" value="{! this }" action="{! c.onInit }"/>
<div>
<div class="slds-text-heading_medium slds-align_absolute-center title">Let's get this property moving!</div>
<div class="slds-text-heading_small slds-align_absolute-center title">Step 3: Add More Pictures</div>
<lightning:progressIndicator currentStep="step3">
<lightning:progressStep label="Comparable Rentals" value="step1" />
<lightning:progressStep label="Adjust Price" value="step2" />
<lightning:progressStep label="Add Pictures" value="step3" />
<lightning:progressStep label="Complete" value="step4" />
</lightning:progressIndicator>
<lightning:layout >
<lightning:layoutItem >
<c:PropertyView recordId="{!v.recordId}"/>
</lightning:layoutItem>
<lightning:layoutItem flexibility="grow" class="content">
<header>This property has {!v.files.length} pictures. Properties that have more pictures sell faster. Use this screen to add pictures.</header>
<aura:if isTrue="{!v.files.length > 0}">
<lightning:carousel disableAutoRefresh="false" disableAutoScroll="true" class="slds-align_absolute-center">
<aura:iteration items="{!v.files}" var="file" indexVar="index">
<lightning:carouselImage src="{! '/sfc/servlet.shepherd/version/download/' + file.Id}" />
</aura:iteration>
</lightning:carousel>
<aura:set attribute="else">
<div class="no-pic-msg">
<div class="slds-align_absolute-center"><lightning:icon iconName="utility:photo" size="large" /></div>
<div class="slds-align_absolute-center">There are currently no pictures for this property.</div>
</div>
</aura:set>
</aura:if>
<lightning:fileUpload label="Add picture" multiple="true" accept=".jpg, .png, .gif" recordId="{!v.recordId}" onuploadfinished="{!c.onUploadFinished}" class="slds-align_absolute-center"/>
</lightning:layoutItem>
</lightning:layout>
</div>
</aura:component>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="urn:metadata.tooling.soap.sforce.com" fqn="FlowScreenImageUpload">
<apiVersion>42.0</apiVersion>
<description>A Lightning Component Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,38 +0,0 @@
.THIS {
height: 400px;
}
.THIS .slds-carousel {
width: 200px;
max-width: inherit;
}
.THIS .slds-carousel__image>img {
width: 200px;
max-height: 190px;
}
.THIS header {
padding-bottom: 8px;
}
.THIS .content {
padding-left: 24px;
}
.THIS .slds-progress {
margin-top: 8px;
margin-bottom: 30px;
}
.THIS .slds-carousel__content {
display: none;
}
.THIS .title {
padding-top: 4px;
}
.THIS .no-pic-msg {
margin: 12px 0 24px 0;
}

Просмотреть файл

@ -1,3 +0,0 @@
<design:component >
<design:attribute name="recordId" label="Property Id" />
</design:component>

Просмотреть файл

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="120px" height="120px" viewBox="0 0 120 120" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M120,108 C120,114.6 114.6,120 108,120 L12,120 C5.4,120 0,114.6 0,108 L0,12 C0,5.4 5.4,0 12,0 L108,0 C114.6,0 120,5.4 120,12 L120,108 L120,108 Z" id="Shape" fill="#2A739E"/>
<path d="M77.7383308,20 L61.1640113,20 L44.7300055,63.2000173 L56.0543288,63.2000173 L40,99.623291 L72.7458388,54.5871812 L60.907727,54.5871812 L77.7383308,20 Z" id="Path-1" fill="#FFFFFF"/>
</g>
</svg>

До

Ширина:  |  Высота:  |  Размер: 661 B

Просмотреть файл

@ -1,14 +0,0 @@
({
onInit: function (component, event, helper) {
helper.loadPictures(component);
},
// onRecordChange: function (component, event, helper) {
// helper.loadPictures(component);
// },
onUploadFinished: function (component, event, helper) {
helper.loadPictures(component);
}
})

Просмотреть файл

@ -1,30 +0,0 @@
({
loadPictures : function(component) {
var propertyId = component.get("v.recordId");
if (!propertyId) {
return;
}
component.set("v.files", []);
var action = component.get("c.getPictures");
action.setParams({
"propertyId": propertyId,
});
action.setCallback(this, function (response) {
var files = component.get("v.files");
var newFiles = response.getReturnValue();
if (!newFiles) {
return;
}
if (!files) {
files = [];
} else {
for (var i=files.length;i<newFiles.length; i++) {
console.log(newFiles[i]);
files.push(newFiles[i]);
}
}
component.set("v.files", files);
});
$A.enqueueAction(action);
}
})

Просмотреть файл

@ -1,5 +0,0 @@
({
// Your renderer method overrides go here
})

Просмотреть файл

@ -1,6 +0,0 @@
<aura:documentation>
<aura:description>Documentation</aura:description>
<aura:example name="ExampleName" ref="exampleComponentName" label="Label">
Example Description
</aura:example>
</aura:documentation>

Просмотреть файл

@ -1,38 +0,0 @@
<aura:component implements="lightning:availableForFlowScreens" access="global">
<aura:attribute name="recordId" type="String" access="global" />
<aura:attribute name="property" type="Property__c" />
<force:recordData aura:id="propertyService" recordId="{!v.recordId}" targetFields="{!v.property}" fields="['Id','Price__c']" mode="EDIT"/>
<div>
<div class="slds-text-heading_medium slds-align_absolute-center title">Let's get this property moving!</div>
<div class="slds-text-heading_small slds-align_absolute-center title">Step 2: Compare and Adjust Price</div>
<lightning:progressIndicator currentStep="step2">
<lightning:progressStep label="Comparable Rentals" value="step1" />
<lightning:progressStep label="Adjust Price" value="step2" />
<lightning:progressStep label="Add Pictures" value="step3" />
<lightning:progressStep label="Complete" value="step4" />
</lightning:progressIndicator>
<lightning:layout >
<lightning:layoutItem >
<c:PropertyView recordId="{!v.recordId}"/>
</lightning:layoutItem>
<lightning:layoutItem flexibility="grow" class="content">
<header>Use the tool below to adjust the price of your property based on comparable listings nearby.</header>
<div class="slds-align_absolute-center">
<c:PriceOptimizationWidget price="{!v.property.Price__c}" />
</div>
<div class="slds-align_absolute-center">
<lightning:slider label="Price" step="5000" min="400000" max="650000" value="{!v.property.Price__c}" onchange="{!c.onPriceChange}" class="slider"/>
<lightning:buttonIcon iconName="utility:check" onclick="{!c.savePrice}" class="check-btn"/>
</div>
</lightning:layoutItem>
</lightning:layout>
</div>
</aura:component>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="urn:metadata.tooling.soap.sforce.com" fqn="FlowScreenPriceChange">
<apiVersion>42.0</apiVersion>
<description>A Lightning Component Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,42 +0,0 @@
.THIS {
height: 400px;
}
.THIS header {
padding-bottom: 8px;
}
.THIS .content {
padding-left: 24px;
}
.THIS .slds-progress {
margin-top: 8px;
margin-bottom: 36px;
}
.THIS .slider > .slds-form-element {
width: 450px;
}
.THIS .slds-slider__value {
font-size: 1.2rem;
color: #1A4F93;
}
.THIS .slds-slider__value::before {
content: "$";
}
.THIS .title {
padding-top: 4px;
}
.THIS .check-btn {
margin-top: 30px;
}
.THIS .slds-slider-label__range {
display:none;
height: 0;
}

Просмотреть файл

@ -1,3 +0,0 @@
<design:component >
<design:attribute name="recordId" label="Property Id" />
</design:component>

Просмотреть файл

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="120px" height="120px" viewBox="0 0 120 120" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M120,108 C120,114.6 114.6,120 108,120 L12,120 C5.4,120 0,114.6 0,108 L0,12 C0,5.4 5.4,0 12,0 L108,0 C114.6,0 120,5.4 120,12 L120,108 L120,108 Z" id="Shape" fill="#2A739E"/>
<path d="M77.7383308,20 L61.1640113,20 L44.7300055,63.2000173 L56.0543288,63.2000173 L40,99.623291 L72.7458388,54.5871812 L60.907727,54.5871812 L77.7383308,20 Z" id="Path-1" fill="#FFFFFF"/>
</g>
</svg>

До

Ширина:  |  Высота:  |  Размер: 661 B

Просмотреть файл

@ -1,14 +0,0 @@
({
onPriceChange : function(component, event, helper) {
var property = component.get("v.property");
property.Price__c = event.getParam("value");
},
savePrice : function(component, event, helper) {
component.find("propertyService").saveRecord($A.getCallback(function(saveResult) {
}));
},
})

Просмотреть файл

@ -1,5 +0,0 @@
({
helperMethod : function() {
}
})

Просмотреть файл

@ -1,5 +0,0 @@
({
// Your renderer method overrides go here
})

Просмотреть файл

@ -1,6 +0,0 @@
<aura:documentation>
<aura:description>Documentation</aura:description>
<aura:example name="ExampleName" ref="exampleComponentName" label="Label">
Example Description
</aura:example>
</aura:documentation>

Просмотреть файл

@ -1,50 +0,0 @@
<aura:component implements="flexipage:availableForAllPageTypes,force:hasRecordId" access="global">
<aura:attribute name="recordId" type="Id" />
<aura:attribute name="property" type="Property__c" />
<force:recordData recordId="{!v.recordId}" targetFields="{!v.property}" fields="['Id', 'Predicted_Days_on_Market__c']" />
<article class="slds-card">
<div class="slds-grid slds-einstein-header slds-card__header">
<header class="slds-media slds-media_center slds-has-flexi-truncate">
<div class="slds-grid slds-grid_vertical-align-center slds-size_3-of-4 slds-medium-size_2-of-3">
<div class="slds-media__body">
<h2 class="slds-truncate" title="Einstein (10+)">
<a href="javascript:void(0);" class="slds-card__header-link" title="Einstein (10+)">
<span class="slds-text-heading_small">Predicted Days on Market</span>
</a>
</h2>
</div>
</div>
<div class="slds-einstein-header__figure slds-size_1-of-4 slds-medium-size_1-of-3"></div>
</header>
</div>
<div class="slds-card__body slds-card__body_inner">
<div class="prediction slds-align_absolute-center">{!v.property.Predicted_Days_on_Market__c}</div>
<lightning:layout>
<lightning:layoutItem size="6">
<div class="factors">
<h2>Top positive factors</h2>
<ul>
<li><span class="ring-green"></span>Location</li>
<li><span class="ring-green"></span>Amenities</li>
<li><span class="ring-green"></span>School district</li>
</ul>
</div>
</lightning:layoutItem>
<lightning:layoutItem size="6">
<div class="factors">
<h2>Top negative factors</h2>
<ul>
<li><span class="ring-red"></span>Number of pictures</li>
<li><span class="ring-red"></span>Price</li>
<li><span class="ring-red"></span>Number of open houses</li>
</ul>
</div>
</lightning:layoutItem>
</lightning:layout>
</div>
</article>
</aura:component>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="urn:metadata.tooling.soap.sforce.com" fqn="PredictedDaysOnMarket">
<apiVersion>42.0</apiVersion>
<description>A Lightning Component Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,48 +0,0 @@
.THIS {
padding-bottom: 8px;
}
.THIS .prediction {
width: 60px;
height: 60px;
text-align: center;
/* padding: 12px; */
border: solid 3px #c23934;
border-radius: 50%;
color: #c23934;
margin-bottom: 8px;
/* margin: 8px auto; */
font-size: 24px;
/* font-weight: 300; */
}
.THIS .factors {
border: solid 1px #EEE;
border-radius: 4px;
text-align: left;
margin: 0 4px;
padding: 8px;
height: 96px;
}
.THIS .ring-red {
width: 10px;
height: 10px;
border: solid 2px #c23934;
border-radius: 50%;
display: inline-block;
margin-right: 4px;
}
.THIS .ring-green {
width: 10px;
height: 10px;
border: solid 2px #04844b;
border-radius: 50%;
display: inline-block;
margin-right: 4px;
}
.THIS .slds-card__body_inner {
padding: 0 0.2rem;
margin-bottom: .3rem;
}

Просмотреть файл

@ -1,3 +0,0 @@
<design:component label="Predicted Days On Market">
</design:component>

Просмотреть файл

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="120px" height="120px" viewBox="0 0 120 120" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M120,108 C120,114.6 114.6,120 108,120 L12,120 C5.4,120 0,114.6 0,108 L0,12 C0,5.4 5.4,0 12,0 L108,0 C114.6,0 120,5.4 120,12 L120,108 L120,108 Z" id="Shape" fill="#2A739E"/>
<path d="M77.7383308,20 L61.1640113,20 L44.7300055,63.2000173 L56.0543288,63.2000173 L40,99.623291 L72.7458388,54.5871812 L60.907727,54.5871812 L77.7383308,20 Z" id="Path-1" fill="#FFFFFF"/>
</g>
</svg>

До

Ширина:  |  Высота:  |  Размер: 661 B

Просмотреть файл

@ -1,5 +0,0 @@
({
myAction : function(component, event, helper) {
}
})

Просмотреть файл

@ -1,5 +0,0 @@
({
helperMethod : function() {
}
})

Просмотреть файл

@ -1,5 +0,0 @@
({
// Your renderer method overrides go here
})

Просмотреть файл

@ -1,52 +0,0 @@
<aura:component implements="force:hasRecordId,flexipage:availableForAllPageTypes"
access="global">
<!--
Component that calculates/predicts the right price for a property.
The prediction service is stubbed in this version of the component.
-->
<ltng:require scripts="{!$Resource.countup7}" />
<aura:attribute name="recordId" type="Id" />
<aura:attribute name="property" type="Property__c"/>
<aura:attribute name="smartPrice" type="Long"/>
<aura:attribute name="waiting" type="Boolean" default="false"/>
<force:recordData aura:id="propertyService"
recordId="{!v.recordId}"
targetFields="{!v.property}"
fields="['Id', 'Price__c', 'Assessed_Value__c']"
mode="EDIT"
recordUpdated="{!c.onRecordUpdated}"/>
<aura:handler event="ltng:selectSObject" action="{!c.onRecordSelected}"/>
<lightning:card >
<aura:set attribute="title">
<lightning:icon iconName="utility:setup_assistant_guide" size="small"/>
Smart Price Calculator
</aura:set>
<aura:set attribute="actions">
<lightning:button label="Save as New Price" onclick="{!c.onSavePriceBtnClicked}"/>
</aura:set>
<aura:if isTrue="{!v.property==undefined}">
<div aura:id="selectSection" class="select slds-text-color--weak">
Select a property
</div>
</aura:if>
<aura:if isTrue="{!v.property!=undefined}">
<div aura:id="calculateSection">
<h2>Current Price: <lightning:formattedNumber value="{!v.property.Price__c}" style="currency" currencyCode="USD"/></h2>
<lightning:button label="Calculate Smart Price" onclick="{!c.onSmartPriceBtnClicked}"/>
<h1><span aura:id="currency"/><span aura:id="smartPrice"/></h1>
</div>
</aura:if>
<aura:if isTrue="{! v.waiting }">
<lightning:spinner size="large"/>
</aura:if>
</lightning:card>
</aura:component>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>38.0</apiVersion>
<description>A Lightning Component Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,35 +0,0 @@
.THIS {
position: relative;
}
.THIS .slds-card__body h1 {
font-weight: 300;
color: #0070D2;
font-size: 24px;
margin-top: 12px;
}
.THIS .slds-card__body h2 {
font-weight: 300;
color: #0070D2;
font-size: 18px;
margin-top: 0;
margin-bottom: 12px;
}
.THIS .slds-card__body {
height: 120px;
text-align: center;
}
.THIS .slds-icon-standard-solution {
background-color: transparent;
}
.THIS .slds-icon-standard-solution svg {
fill: #54698D;
}
.THIS .select {
padding-top: 40px;
}

Просмотреть файл

@ -1,3 +0,0 @@
<design:component label="Smart Price Calculator">
</design:component>

Просмотреть файл

@ -1,41 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="88.316px" height="88.318px" viewBox="0 0 88.316 88.318" enable-background="new 0 0 88.316 88.318" xml:space="preserve">
<g id="Layer_1_copy">
<path fill="#EA74A2" d="M88.316,73.268c0,8.312-6.738,15.051-15.054,15.051H15.05C6.737,88.319,0,81.581,0,73.268V15.052
C0,6.74,6.737,0,15.05,0h58.215c8.312,0,15.054,6.74,15.054,15.052L88.316,73.268L88.316,73.268z"/>
</g>
<g id="Layer_5">
<g>
<path fill="#FFFFFF" d="M77.931,50.581H40.867c-0.722,0-1.354,0.633-1.354,1.356v22.146c0,1.99,1.627,3.616,3.615,3.616h32.543
c1.99,0,3.616-1.626,3.616-3.616V51.937C79.287,51.214,78.654,50.581,77.931,50.581z M53.072,70.469
c0,0.544-0.362,0.903-0.904,0.903h-3.616c-0.543,0-0.902-0.359-0.902-0.903v-3.615c0-0.543,0.359-0.904,0.902-0.904h3.616
c0.542,0,0.904,0.361,0.904,0.904V70.469z M53.072,61.427c0,0.544-0.362,0.904-0.904,0.904h-3.616
c-0.543,0-0.902-0.36-0.902-0.904v-3.615c0-0.543,0.359-0.903,0.902-0.903h3.616c0.542,0,0.904,0.36,0.904,0.903V61.427z
M62.111,70.469c0,0.544-0.362,0.903-0.903,0.903h-3.616c-0.543,0-0.903-0.359-0.903-0.903v-3.615c0-0.543,0.36-0.904,0.903-0.904
h3.616c0.541,0,0.903,0.361,0.903,0.904V70.469z M62.111,61.427c0,0.544-0.362,0.904-0.903,0.904h-3.616
c-0.543,0-0.903-0.36-0.903-0.904v-3.615c0-0.543,0.36-0.903,0.903-0.903h3.616c0.541,0,0.903,0.36,0.903,0.903V61.427z
M71.151,70.469c0,0.544-0.362,0.903-0.904,0.903h-3.615c-0.542,0-0.903-0.359-0.903-0.903v-3.615
c0-0.543,0.361-0.904,0.903-0.904h3.615c0.542,0,0.904,0.361,0.904,0.904V70.469z M71.151,61.427c0,0.544-0.362,0.904-0.904,0.904
h-3.615c-0.542,0-0.903-0.36-0.903-0.904v-3.615c0-0.543,0.361-0.903,0.903-0.903h3.615c0.542,0,0.904,0.36,0.904,0.903V61.427z
M75.671,38.829h-4.52v-1.808c0-1.447-1.175-2.712-2.712-2.712c-1.447,0-2.712,1.175-2.712,2.712v1.808H53.072v-1.808
c0-1.447-1.175-2.712-2.712-2.712c-1.447,0-2.712,1.175-2.712,2.712v1.808h-4.521c-1.987,0-3.616,1.628-3.616,3.616v2.261
c0,0.722,0.634,1.355,1.355,1.355H77.93c0.723,0,1.354-0.635,1.354-1.355v-2.261C79.287,40.457,77.661,38.829,75.671,38.829z"/>
</g>
<path fill="#FFFFFF" d="M32.7,30.25c-0.4-0.398-1-0.398-1.4,0L7.4,54.15c-1.2,1.199-1.2,3,0,4.199s3,1.199,4.2,0L35.5,34.45
c0.4-0.4,0.4-1,0-1.4L32.7,30.25z"/>
<path fill="#FFFFFF" d="M39.7,30.25l3.2-3.2c0.6-0.6,0.6-1.5,0-2.1l-2.102-2.1c-0.6-0.602-1.5-0.602-2.1,0l-3.2,3.198
c-0.399,0.4-0.399,1,0,1.4l2.8,2.8C38.7,30.649,39.3,30.649,39.7,30.25z"/>
<path fill="#FFFFFF" d="M14.9,20.85c3.8,1.198,6.8,4.1,8,8c0.2,0.6,1,0.6,1.2,0c1.199-3.802,4.1-6.802,8-8
c0.601-0.201,0.601-1,0-1.201c-3.801-1.199-6.801-4.101-8-8c-0.2-0.601-1-0.601-1.2,0c-1.2,3.8-4.101,6.8-8,8
C14.4,19.85,14.4,20.649,14.9,20.85z"/>
<path fill="#FFFFFF" d="M42.8,17.649c2.602,0.801,4.5,2.701,5.301,5.301c0.101,0.4,0.699,0.4,0.801,0c0.8-2.6,2.699-4.5,5.3-5.301
c0.399-0.101,0.399-0.699,0-0.799c-2.601-0.802-4.5-2.701-5.3-5.302c-0.102-0.399-0.7-0.399-0.801,0
c-0.801,2.601-2.699,4.5-5.301,5.302C42.4,16.95,42.4,17.55,42.8,17.649z"/>
<path fill="#FFFFFF" d="M42.875,34.91c3.8,1.199,6.8,4.1,8,8c0.201,0.6,1,0.6,1.201,0c1.199-3.801,4.1-6.801,7.999-8
c0.601-0.201,0.601-1,0-1.201c-3.8-1.199-6.8-4.1-7.999-8c-0.201-0.6-1-0.6-1.201,0c-1.199,3.801-4.1,6.801-8,8
C42.375,33.91,42.375,34.709,42.875,34.91z"/>
</g>
</svg>

До

Ширина:  |  Высота:  |  Размер: 3.5 KiB

Просмотреть файл

@ -1,44 +0,0 @@
({
onRecordSelected : function(component, event) {
var id = event.getParam("recordId");
component.set("v.recordId", id);
var service = component.find("propertyService");
service.reloadRecord();
var smartPrice = component.find("smartPrice");
if (smartPrice) {
smartPrice.getElement().innerHTML = "";
component.find("currency").getElement().innerHTML="";
}
},
onRecordUpdated : function(component, event) {
var changeType = event.getParams().changeType;
if (changeType === "CHANGED") {
var service = component.find("propertyService");
service.reloadRecord();
}
},
onSmartPriceBtnClicked : function(component, event, helper) {
var property = component.get("v.property");
if (property) {
helper.getSmartPrice(component, function(smartPrice) {
component.set("v.smartPrice", smartPrice);
var smartPriceEl = component.find("smartPrice").getElement();
var currencyEl = component.find("currency").getElement();
currencyEl.innerHTML = '$';
var numAnim = new CountUp(smartPriceEl, smartPrice * 0.8, smartPrice, 0, 2);
numAnim.start();
});
}
},
onSavePriceBtnClicked : function(component, event) {
var property = component.get("v.property");
if (property) {
property.Price__c = component.get("v.smartPrice");
component.find("propertyService").saveRecord();
}
}
})

Просмотреть файл

@ -1,15 +0,0 @@
({
getSmartPrice: function(component, callback) {
// Stubbed service call. Make call to PredictionIO here.
// More info: http://www.dreamhouseapp.io/pio/
var property = component.get("v.property");
component.set("v.waiting", true);
window.setTimeout($A.getCallback(function() {
component.set("v.waiting", false);
if (component.isValid()) {
var smartPrice = Math.round(property.Assessed_Value__c * 1.15 / 1000) * 1000;
callback(smartPrice);
}
}), 300);
}
})

Просмотреть файл

@ -1,6 +0,0 @@
<aura:documentation>
<aura:description>Documentation</aura:description>
<aura:example name="ExampleName" ref="exampleComponentName" label="Label">
Example Description
</aura:example>
</aura:documentation>

Просмотреть файл

@ -1,32 +0,0 @@
<aura:component implements="force:hasRecordId,flexipage:availableForAllPageTypes" access="global">
<aura:attribute name="recordId" type="Id" />
<aura:attribute name="sObject" type="SObject" />
<aura:attribute name="fullScreen" type="Boolean" default="false" />
<aura:attribute name="fields" type="String[]" default="['Id']" />
<aura:handler name="init" value="{!this}" action="{!c.doInit}"/>
<force:recordData aura:id="service"
recordId="{!v.recordId}"
targetFields="{!v.sObject}"
fields="{!v.fields}"
recordUpdated="{!c.onRecordUpdated}"/>
<div>
<!-- <lightning:buttonIcon onclick="{!c.fullScreen}" size="large" variant="bare" class="btn-expand" iconName="utility:expand" /> -->
<c:Viewer360Base onmaximize="{!c.onMaximize}"/>
<aura:if isTrue="{!v.fullScreen==true}">
<div role="dialog" tabindex="-1" aria-labelledby="header43" class="slds-modal slds-fade-in-open">
<div class="slds-modal__container slds-card">
<c:Viewer360Base onminimize="{!c.onMinimize}"/>
</div>
<!-- <div class="btn slds-modal__close close x-large">
<lightning:buttonIcon variant="bare" onclick="{!c.closeDialog}" size="large" iconName="utility:close" />
</div> -->
</div>
<div class="slds-backdrop slds-backdrop--open"></div>
</aura:if>
</div>
</aura:component>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="urn:metadata.tooling.soap.sforce.com" fqn="Viewer360">
<apiVersion>42.0</apiVersion>
<description>A Lightning Component Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,33 +0,0 @@
.THIS {
position: relative;
height: 220px;
}
.THIS .slds-modal__container {
margin-top: 120px;
height: 75%;
width: 90%;
max-width: initial;
padding: 0;
}
.THIS .slds-modal {
}
.THIS .slds-modal__close {
position: absolute;
top: 100px;
right: 5%;
}
.THIS .title {
padding-left: 10px;
padding-top: 6px;
}
.THIS .btn-expand {
position: absolute;
bottom: 8px;
right: 10px;
z-index: 20;
}

Просмотреть файл

@ -1,3 +0,0 @@
<design:component label="360 Viewer">
</design:component>

Просмотреть файл

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="120px" height="120px" viewBox="0 0 120 120" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M120,108 C120,114.6 114.6,120 108,120 L12,120 C5.4,120 0,114.6 0,108 L0,12 C0,5.4 5.4,0 12,0 L108,0 C114.6,0 120,5.4 120,12 L120,108 L120,108 Z" id="Shape" fill="#2A739E"/>
<path d="M77.7383308,20 L61.1640113,20 L44.7300055,63.2000173 L56.0543288,63.2000173 L40,99.623291 L72.7458388,54.5871812 L60.907727,54.5871812 L77.7383308,20 Z" id="Path-1" fill="#FFFFFF"/>
</g>
</svg>

До

Ширина:  |  Высота:  |  Размер: 661 B

Просмотреть файл

@ -1,19 +0,0 @@
({
doInit : function(component) {
},
onMaximize : function(component) {
component.set("v.fullScreen", true);
},
onMinimize : function(component) {
component.set("v.fullScreen", false);
},
closeDialog : function(component) {
component.set("v.fullScreen", false);
},
onRecordUpdated : function(component, event) {
}
})

Просмотреть файл

@ -1,5 +0,0 @@
({
helperMethod : function() {
}
})

Просмотреть файл

@ -1,5 +0,0 @@
({
// Your renderer method overrides go here
})

Просмотреть файл

@ -1,6 +0,0 @@
<aura:documentation>
<aura:description>Documentation</aura:description>
<aura:example name="ExampleName" ref="exampleComponentName" label="Label">
Example Description
</aura:example>
</aura:documentation>

Просмотреть файл

@ -1,28 +0,0 @@
<aura:component controller="BotController" >
<aura:attribute name="isPlaying" type="boolean" default="false"/>
<aura:registerEvent name="onmaximize" type="c:Viewer360Event" />
<aura:registerEvent name="onminimize" type="c:Viewer360Event" />
<div aura:id="container" class="slds-card">
<aura:if isTrue="{!!v.isPlaying}">
<div class="static" style="{! 'background-image: url(' + $Resource.three + '/images/exampleimage.jpg)'}"></div>
</aura:if>
<img src="{!$Resource.three + '/360logo2.svg'}" class="logo"/>
<iframe aura:id="iframe" frameborder="0" border="0" cellspacing="0" />
<div class="buttons-center">
<aura:if isTrue="{!!v.isPlaying}">
<lightning:buttonIcon iconName="utility:right" size="large" variant="bare" onclick="{! c.onPlay }" iconClass="control-btn"/>
</aura:if>
<aura:if isTrue="{!v.isPlaying}">
<lightning:buttonIcon iconName="utility:pause" size="large" variant="bare" onclick="{! c.onStop }" iconClass="control-btn"/>
</aura:if>
</div>
<div class="buttons-right">
<lightning:buttonIcon onclick="{!c.onMaximize}" size="large" variant="bare" iconName="utility:expand" iconClass="control-btn"/>
<lightning:buttonIcon onclick="{!c.onMinimize}" size="large" variant="bare" iconName="utility:contract" iconClass="control-btn"/>
</div>
</div>
</aura:component>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="urn:metadata.tooling.soap.sforce.com" fqn="Viewer360Base">
<apiVersion>42.0</apiVersion>
<description>A Lightning Component Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,46 +0,0 @@
.THIS {
position: relative;
height: 100%;
padding: 4px;
}
.THIS .static {
background-size: cover;
height: 100%;
width: 100%;
}
.THIS iframe {
border: 0;
width: 100%;
height: 100%;
}
.THIS .logo {
position: absolute;
left: 12px;
bottom: 12px;
width: 70px;
z-index: 10;
}
.THIS .buttons-center {
position: absolute;
left: 0;
right: 0;
bottom: 8px;
width: 28px;
margin: 0 auto;
z-index: 10;
}
.THIS .buttons-right {
position: absolute;
right: 12px;
bottom: 12px;
z-index: 10;
}
.THIS .control-btn {
fill: #FFFFFF;
}

Просмотреть файл

@ -1,3 +0,0 @@
<design:component >
</design:component>

Просмотреть файл

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="120px" height="120px" viewBox="0 0 120 120" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M120,108 C120,114.6 114.6,120 108,120 L12,120 C5.4,120 0,114.6 0,108 L0,12 C0,5.4 5.4,0 12,0 L108,0 C114.6,0 120,5.4 120,12 L120,108 L120,108 Z" id="Shape" fill="#2A739E"/>
<path d="M77.7383308,20 L61.1640113,20 L44.7300055,63.2000173 L56.0543288,63.2000173 L40,99.623291 L72.7458388,54.5871812 L60.907727,54.5871812 L77.7383308,20 Z" id="Path-1" fill="#FFFFFF"/>
</g>
</svg>

До

Ширина:  |  Высота:  |  Размер: 661 B

Просмотреть файл

@ -1,24 +0,0 @@
({
onPlay: function(component) {
component.set("v.isPlaying", true);
var iframe = component.find('iframe').getElement();
iframe.src = $A.get('$Resource.three') + '/index.html';
},
onStop: function(component) {
component.set("v.isPlaying", false);
var iframe = component.find('iframe').getElement();
iframe.src = $A.get('$Resource.three') + '/empty.html';
},
onMaximize: function(component) {
var viewerEvent = component.getEvent("onmaximize");
viewerEvent.fire();
},
onMinimize: function(component) {
var viewerEvent = component.getEvent("onminimize");
viewerEvent.fire();
},
})

Просмотреть файл

@ -1,5 +0,0 @@
({
helperMethod : function() {
}
})

Просмотреть файл

@ -1,5 +0,0 @@
({
// Your renderer method overrides go here
})

Просмотреть файл

@ -1 +0,0 @@
<aura:event type="COMPONENT" description="Event template"/>

Просмотреть файл

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<AuraDefinitionBundle xmlns="urn:metadata.tooling.soap.sforce.com" fqn="Viewer360Event">
<apiVersion>42.0</apiVersion>
<description>A Lightning Event Bundle</description>
</AuraDefinitionBundle>

Просмотреть файл

@ -1,101 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<FlexiPage xmlns="http://soap.sforce.com/2006/04/metadata">
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>collapsed</name>
<value>false</value>
</componentInstanceProperties>
<componentName>force:highlightsPanel</componentName>
</componentInstances>
<mode>Replace</mode>
<name>header</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>force:relatedListContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>relatedTabContent</name>
<type>Facet</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>force:detailPanel</componentName>
</componentInstances>
<mode>Replace</mode>
<name>detailTabContent</name>
<type>Facet</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>body</name>
<value>relatedTabContent</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>title</name>
<value>Standard.Tab.relatedLists</value>
</componentInstanceProperties>
<componentName>flexipage:tab</componentName>
</componentInstances>
<componentInstances>
<componentInstanceProperties>
<name>active</name>
<value>true</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>body</name>
<value>detailTabContent</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>title</name>
<value>Standard.Tab.detail</value>
</componentInstanceProperties>
<componentName>flexipage:tab</componentName>
</componentInstances>
<mode>Replace</mode>
<name>maintabs</name>
<type>Facet</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>tabs</name>
<value>maintabs</value>
</componentInstanceProperties>
<componentName>flexipage:tabset</componentName>
</componentInstances>
<mode>Replace</mode>
<name>main</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>parentFieldApiName</name>
<value>Broker__c.Id</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>relatedListApiName</name>
<value>Properties__r</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>relatedListComponentOverride</name>
<value>NONE</value>
</componentInstanceProperties>
<componentName>force:relatedListSingleContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>sidebar</name>
<type>Region</type>
</flexiPageRegions>
<masterLabel>Broker Record Page</masterLabel>
<parentFlexiPage>flexipage__default_rec_L</parentFlexiPage>
<sobjectType>Broker__c</sobjectType>
<template>
<name>flexipage:recordHomeTemplateDesktop</name>
</template>
<type>RecordPage</type>
</FlexiPage>

Просмотреть файл

@ -1,101 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<FlexiPage xmlns="http://soap.sforce.com/2006/04/metadata">
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>collapsed</name>
<value>false</value>
</componentInstanceProperties>
<componentName>force:highlightsPanel</componentName>
</componentInstances>
<mode>Replace</mode>
<name>header</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>force:relatedListContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>relatedTabContent</name>
<type>Facet</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>force:detailPanel</componentName>
</componentInstances>
<mode>Replace</mode>
<name>detailTabContent</name>
<type>Facet</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>body</name>
<value>relatedTabContent</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>title</name>
<value>Standard.Tab.relatedLists</value>
</componentInstanceProperties>
<componentName>flexipage:tab</componentName>
</componentInstances>
<componentInstances>
<componentInstanceProperties>
<name>active</name>
<value>true</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>body</name>
<value>detailTabContent</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>title</name>
<value>Standard.Tab.detail</value>
</componentInstanceProperties>
<componentName>flexipage:tab</componentName>
</componentInstances>
<mode>Replace</mode>
<name>maintabs</name>
<type>Facet</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>tabs</name>
<value>maintabs</value>
</componentInstanceProperties>
<componentName>flexipage:tabset</componentName>
</componentInstances>
<mode>Replace</mode>
<name>main</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>parentFieldApiName</name>
<value>Broker__c.Id</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>relatedListApiName</name>
<value>Properties__r</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>relatedListComponentOverride</name>
<value>NONE</value>
</componentInstanceProperties>
<componentName>force:relatedListSingleContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>sidebar</name>
<type>Region</type>
</flexiPageRegions>
<masterLabel>Broker Record Page</masterLabel>
<parentFlexiPage>flexipage__default_rec_L</parentFlexiPage>
<sobjectType>Broker__c</sobjectType>
<template>
<name>flexipage:recordHomeTemplateDesktop</name>
</template>
<type>RecordPage</type>
</FlexiPage>

Просмотреть файл

@ -1,101 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<FlexiPage xmlns="http://soap.sforce.com/2006/04/metadata">
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>collapsed</name>
<value>false</value>
</componentInstanceProperties>
<componentName>force:highlightsPanel</componentName>
</componentInstances>
<mode>Replace</mode>
<name>header</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>force:relatedListContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>relatedTabContent</name>
<type>Facet</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>force:detailPanel</componentName>
</componentInstances>
<mode>Replace</mode>
<name>detailTabContent</name>
<type>Facet</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>body</name>
<value>relatedTabContent</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>title</name>
<value>Standard.Tab.relatedLists</value>
</componentInstanceProperties>
<componentName>flexipage:tab</componentName>
</componentInstances>
<componentInstances>
<componentInstanceProperties>
<name>active</name>
<value>true</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>body</name>
<value>detailTabContent</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>title</name>
<value>Standard.Tab.detail</value>
</componentInstanceProperties>
<componentName>flexipage:tab</componentName>
</componentInstances>
<mode>Replace</mode>
<name>maintabs</name>
<type>Facet</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>tabs</name>
<value>maintabs</value>
</componentInstanceProperties>
<componentName>flexipage:tabset</componentName>
</componentInstances>
<mode>Replace</mode>
<name>main</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>parentFieldApiName</name>
<value>Broker__c.Id</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>relatedListApiName</name>
<value>Properties__r</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>relatedListComponentOverride</name>
<value>NONE</value>
</componentInstanceProperties>
<componentName>force:relatedListSingleContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>sidebar</name>
<type>Region</type>
</flexiPageRegions>
<masterLabel>Broker Record Page</masterLabel>
<parentFlexiPage>flexipage__default_rec_L</parentFlexiPage>
<sobjectType>Broker__c</sobjectType>
<template>
<name>flexipage:recordHomeTemplateDesktop</name>
</template>
<type>RecordPage</type>
</FlexiPage>

Просмотреть файл

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<FlexiPage xmlns="http://soap.sforce.com/2006/04/metadata">
<flexiPageRegions>
<name>region1</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>PropertyListDaysOnMarketChart</componentName>
</componentInstances>
<name>region2</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>PropertySummary</componentName>
</componentInstances>
<componentInstances>
<componentName>SmartPriceCalculator</componentName>
</componentInstances>
<componentInstances>
<componentName>DaysOnMarketEstimator</componentName>
</componentInstances>
<name>region3</name>
<type>Region</type>
</flexiPageRegions>
<masterLabel>Command Center</masterLabel>
<template>
<name>flexipage:appHomeTemplateHeaderTwoColumns</name>
</template>
<type>AppPage</type>
</FlexiPage>

Просмотреть файл

@ -1,50 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<FlexiPage xmlns="http://soap.sforce.com/2006/04/metadata">
<flexiPageRegions>
<componentInstances>
<componentName>home:heroChart</componentName>
</componentInstances>
<mode>Replace</mode>
<name>top</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>home:eventContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>bottomLeft</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>runtime_sales_activities:todayTaskContainer</componentName>
</componentInstances>
<componentInstances>
<componentName>home:topDealsContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>bottomRight</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>ActionList</componentName>
</componentInstances>
<componentInstances>
<componentName>home:recentRecordContainer</componentName>
</componentInstances>
<componentInstances>
<componentName>home:assistant</componentName>
</componentInstances>
<mode>Replace</mode>
<name>sidebar</name>
<type>Region</type>
</flexiPageRegions>
<masterLabel>Home Page Default</masterLabel>
<parentFlexiPage>home__desktopDefault</parentFlexiPage>
<template>
<name>home:desktopTemplate</name>
</template>
<type>HomePage</type>
</FlexiPage>

Просмотреть файл

@ -1,50 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<FlexiPage xmlns="http://soap.sforce.com/2006/04/metadata">
<flexiPageRegions>
<componentInstances>
<componentName>home:heroChart</componentName>
</componentInstances>
<mode>Replace</mode>
<name>top</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>home:eventContainer</componentName>
</componentInstances>
<componentInstances>
<componentName>home:recentRecordContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>bottomLeft</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>runtime_sales_activities:todayTaskContainer</componentName>
</componentInstances>
<componentInstances>
<componentName>home:topDealsContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>bottomRight</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>ActionList</componentName>
</componentInstances>
<componentInstances>
<componentName>home:assistant</componentName>
</componentInstances>
<mode>Replace</mode>
<name>sidebar</name>
<type>Region</type>
</flexiPageRegions>
<masterLabel>Home Page Default</masterLabel>
<parentFlexiPage>home__desktopDefault</parentFlexiPage>
<template>
<name>home:desktopTemplate</name>
</template>
<type>HomePage</type>
</FlexiPage>

Просмотреть файл

@ -1,50 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<FlexiPage xmlns="http://soap.sforce.com/2006/04/metadata">
<flexiPageRegions>
<componentInstances>
<componentName>home:heroChart</componentName>
</componentInstances>
<mode>Replace</mode>
<name>top</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>home:eventContainer</componentName>
</componentInstances>
<componentInstances>
<componentName>home:recentRecordContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>bottomLeft</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>runtime_sales_activities:todayTaskContainer</componentName>
</componentInstances>
<componentInstances>
<componentName>home:topDealsContainer</componentName>
</componentInstances>
<mode>Replace</mode>
<name>bottomRight</name>
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>ActionList</componentName>
</componentInstances>
<componentInstances>
<componentName>home:assistant</componentName>
</componentInstances>
<mode>Replace</mode>
<name>sidebar</name>
<type>Region</type>
</flexiPageRegions>
<masterLabel>Home Page Default</masterLabel>
<parentFlexiPage>home__desktopDefault</parentFlexiPage>
<template>
<name>home:desktopTemplate</name>
</template>
<type>HomePage</type>
</FlexiPage>

Просмотреть файл

@ -13,6 +13,10 @@
<name>hideUpdateButton</name>
<value>false</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>variant</name>
<value>linear</value>
</componentInstanceProperties>
<componentName>runtime_sales_pathassistant:pathAssistant</componentName>
</componentInstances>
<mode>Replace</mode>
@ -126,9 +130,6 @@
<type>Region</type>
</flexiPageRegions>
<flexiPageRegions>
<componentInstances>
<componentName>PredictedDaysOnMarket</componentName>
</componentInstances>
<componentInstances>
<componentInstanceProperties>
<name>latField</name>
@ -144,9 +145,6 @@
</componentInstanceProperties>
<componentName>MapCard</componentName>
</componentInstances>
<componentInstances>
<componentName>Viewer360</componentName>
</componentInstances>
<componentInstances>
<componentName>PropertyCarousel</componentName>
</componentInstances>

Просмотреть файл

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<FlowDefinition xmlns="http://soap.sforce.com/2006/04/metadata">
<activeVersionNumber>1</activeVersionNumber>
</FlowDefinition>

Просмотреть файл

@ -1,115 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Flow xmlns="http://soap.sforce.com/2006/04/metadata">
<interviewLabel>Optimize Listing {!$Flow.CurrentDateTime}</interviewLabel>
<label>Optimize Listing</label>
<processType>Flow</processType>
<screens>
<name>Comp_List</name>
<label>Comp List</label>
<locationX>378</locationX>
<locationY>98</locationY>
<allowBack>true</allowBack>
<allowFinish>true</allowFinish>
<allowPause>true</allowPause>
<connector>
<targetReference>Price_Change</targetReference>
</connector>
<fields>
<name>compList</name>
<extensionName>c:FlowScreenCompList</extensionName>
<fieldType>ComponentInstance</fieldType>
<inputParameters>
<name>recordId</name>
<value>
<elementReference>recordId</elementReference>
</value>
</inputParameters>
<isRequired>true</isRequired>
</fields>
<showFooter>true</showFooter>
<showHeader>false</showHeader>
</screens>
<screens>
<name>Complete</name>
<label>Complete</label>
<locationX>363</locationX>
<locationY>602</locationY>
<allowBack>true</allowBack>
<allowFinish>true</allowFinish>
<allowPause>true</allowPause>
<fields>
<name>compl</name>
<extensionName>c:FlowScreenComplete</extensionName>
<fieldType>ComponentInstance</fieldType>
<inputParameters>
<name>recordId</name>
<value>
<elementReference>recordId</elementReference>
</value>
</inputParameters>
<isRequired>true</isRequired>
</fields>
<showFooter>true</showFooter>
<showHeader>false</showHeader>
</screens>
<screens>
<name>Price_Change</name>
<label>Price Change</label>
<locationX>376</locationX>
<locationY>236</locationY>
<allowBack>true</allowBack>
<allowFinish>true</allowFinish>
<allowPause>true</allowPause>
<connector>
<targetReference>Upload_Pics</targetReference>
</connector>
<fields>
<name>priceChange</name>
<extensionName>c:FlowScreenPriceChange</extensionName>
<fieldType>ComponentInstance</fieldType>
<inputParameters>
<name>recordId</name>
<value>
<elementReference>recordId</elementReference>
</value>
</inputParameters>
<isRequired>true</isRequired>
</fields>
<showFooter>true</showFooter>
<showHeader>false</showHeader>
</screens>
<screens>
<name>Upload_Pics</name>
<label>Upload Pics</label>
<locationX>377</locationX>
<locationY>430</locationY>
<allowBack>true</allowBack>
<allowFinish>true</allowFinish>
<allowPause>true</allowPause>
<connector>
<targetReference>Complete</targetReference>
</connector>
<fields>
<name>imageUpload</name>
<extensionName>c:FlowScreenImageUpload</extensionName>
<fieldType>ComponentInstance</fieldType>
<inputParameters>
<name>recordId</name>
<value>
<elementReference>recordId</elementReference>
</value>
</inputParameters>
<isRequired>true</isRequired>
</fields>
<showFooter>true</showFooter>
<showHeader>false</showHeader>
</screens>
<startElementReference>Comp_List</startElementReference>
<variables>
<name>recordId</name>
<dataType>String</dataType>
<isCollection>false</isCollection>
<isInput>true</isInput>
<isOutput>false</isOutput>
</variables>
</Flow>

Просмотреть файл

@ -38,7 +38,10 @@
</actionOverrides>
<actionOverrides>
<actionName>View</actionName>
<type>Default</type>
<content>Broker_Record_Page</content>
<formFactor>Large</formFactor>
<skipRecordTypeSelect>false</skipRecordTypeSelect>
<type>Flexipage</type>
</actionOverrides>
<allowInChatterGroups>false</allowInChatterGroups>
<compactLayoutAssignment>Broker_Compact</compactLayoutAssignment>

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше