Skip to content

Commit

Permalink
fix: init and update demos scripts
Browse files Browse the repository at this point in the history
  • Loading branch information
frankpagan committed Jul 16, 2021
1 parent 7467311 commit cc78295
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 44 deletions.
11 changes: 6 additions & 5 deletions demo/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -11,20 +11,21 @@
<input id="id2" value="13">
<input id="id3" value="14"><br><br><br>

<input data-calculation="l1 + {id1} * 45 + {id3}/{id2} + {id2}">
<input data-calculation="{#id1} + {#id2}">
<input data-calculation="1 + 3 * 5">

<h1 data-calculation="l1 + {id1} * 5 + {id3}/{id2}/0 + {id2}"></h1>
<h1 data-calculation="1 + {#id1} * 5 + {#id3}/{#id2}/0 + {#id2}"></h1>

<script>
var config = {
apiKey: 'c2b08663-06e3-440c-ef6f-13978b42883a',
organization_Id: '5de0387b12e200ea63204d6c'
organization_Id: '5de0387b12e200ea63204d6c',
host: 'ws.cocreate.app'
}
</script>

<!-- CoCreate JS CDN -->
<script src="https://cdn.cocreate.app/calculation/latest/CoCreate-calculation.min.js" ></script>
<!--<script src="../dist/CoCreate-calculation.js"></script>-->
<script src="../../../CoCreateJS/dist/CoCreate.js" ></script>


</body>
Expand Down
62 changes: 23 additions & 39 deletions src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,35 +6,17 @@ import floatingLabel from '@cocreate/floating-label'
import htmltags from '@cocreate/htmltags'

var CoCreateCalculation = {
init: function() {
this.initCalculationElements();
init: function(){
let calculationElements = document.querySelectorAll('[data-calculation]')
this.initElements(calculationElements)
},


initCalculationElements: function(container) {
const mainContainer = container || document;
if (!mainContainer.querySelectorAll) {
return;
}
let calculationElements = mainContainer.querySelectorAll('[data-calculation]') || [];
calculationElements = Array.from(calculationElements);

if (mainContainer != document && mainContainer.hasAttribute('data-calculation')) {
calculationElements.push(mainContainer);
}

for (let i=0; i<calculationElements.length; i++) {
if (CoCreateObserver.getInitialized(calculationElements[i], "calculation_init")) {
return;
}
CoCreateObserver.setInitialized(calculationElements[i], "calculation_init")

this.initCalculationElement(calculationElements[i]);
}


initElements: function(elements) {
for(let el of elements)
this.initElement(el);
},
initCalculationElement: function(ele) {

initElement: function(ele) {

const self = this;
let data_calculation = ele.getAttribute('data-calculation');
Expand Down Expand Up @@ -277,23 +259,25 @@ function calculation(string) {

CoCreateCalculation.init();

CoCreateObserver.init({
name: 'CoCreateCalculationChangeValue',
observe: ['attributes'],
attributesFilter: ['value'],
callback: function(mutation) {

if(mutation.target.tagName === "INPUT")
console.log(mutation.target)
}
});
// CoCreateObserver.init({
// name: 'CoCreateCalculationChangeValue',
// observe: ['attributes'],
// attributeName: ['value'],
// target: 'input',
// callback: function(mutation) {

// if(mutation.target.tagName === "INPUT")
// console.log(mutation.target)
// }
// });

CoCreateObserver.init({
name: 'CoCreateCalculationInit',
observe: ['addedNodes'],
attributesFilter: ['data-calculation'],
callback: function(mutation) {
CoCreateCalculation.initCalculationElements(mutation.target)
target: '[data-calculation]',
callback: function(mutation) {
CoCreateCalculation.initElement(mutation.target)
}
});

Expand Down

0 comments on commit cc78295

Please sign in to comment.