Skip to content

Commit f70727e

Browse files
author
Manuel Larsen
committed
added default value
1 parent dc46494 commit f70727e

7 files changed

+52
-16
lines changed

dist/angular-uikit.min.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/index.html

+32-8
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ <h1 class="uk-article-title">JSON Table Form</h1>
5555
</custom-insert-template>
5656
</uk-ng-json-table-form>
5757
</form>
58-
58+
5959

6060
<!-- {{vm.jsonTableModel | json}} -->
6161
</article>
@@ -76,7 +76,7 @@ <h1 class="uk-article-title">JSON Table Form</h1>
7676
vm.selected = { "userId": 2, "id": 12, "title": "in quibusdam tempore odit est dolorem", "body": "itaque id aut magnam\npraesentium quia et ea odit et ea voluptas et\nsapiente quia nihil amet occaecati quia id voluptatem\nincidunt ea est distinctio odio" };
7777
//vm.source = ['test1', 'test2', 'test3'];
7878

79-
vm.source = [{ id: 1, pippo: 'test1' }, { id: 56, pippo: 'test2' }, { id: 123, pippo: 'test3' }];
79+
vm.source = [{ id: 1, pippo: 'test1', value: 'primo' }, { id: 56, pippo: 'test2', value: 'secondo' }, { id: 123, pippo: 'test3', value: 'terzo' }];
8080

8181

8282
vm.sortList = [{
@@ -87,7 +87,7 @@ <h1 class="uk-article-title">JSON Table Form</h1>
8787
content: "Test2"
8888
}];
8989

90-
/*
90+
9191
vm.jsonTableModel = [{
9292
name: "ciao1",
9393
thumbnail: "200x100",
@@ -150,12 +150,23 @@ <h1 class="uk-article-title">JSON Table Form</h1>
150150
"label": "sequence",
151151
"property": "sequence",
152152
"type": "sequence"
153-
}, {
153+
},
154+
{
154155
"label": "Name",
155156
"property": "name",
156157
"type": "text",
157158
"required": true
158159
},
160+
{
161+
"label": "Fratello",
162+
"property": "fratello",
163+
"type": "text",
164+
"required": true,
165+
"default": (parent, newItem)=>{
166+
console.log(parent, newItem);
167+
return newItem.autocomplete?newItem.autocomplete.value:null
168+
}
169+
},
159170
{
160171
"label": "keyValueObject",
161172
"property": "keyValueObject",
@@ -175,6 +186,16 @@ <h1 class="uk-article-title">JSON Table Form</h1>
175186
"options": ["Units", "Millions"]
176187
}
177188
},
189+
{
190+
"label": "Autocomplete",
191+
"property": "autocomplete",
192+
"type": "autocomplete",
193+
"required": true,
194+
"autocomplete": {
195+
"source": vm.source,
196+
"label": "pippo"
197+
}
198+
},
178199
{
179200
"label": "arrayOfObject",
180201
"property": "arrayOfObject",
@@ -210,14 +231,17 @@ <h1 class="uk-article-title">JSON Table Form</h1>
210231
"label": "asd",
211232
"required": true,
212233
"property": "dosage",
213-
"type": "text"
234+
"type": "text",
235+
"default": function(parent, newItem){
236+
return parent&&parent.autocomplete?parent.autocomplete.value:null;
237+
}
214238
}
215239
]
216240
}
217-
];*/
241+
];
218242

219-
vm.jsonTableModel = [{"id":144,"code":"edgeLimMIn","description":"-","level":1},{"id":129,"code":"poserrAsp","description":"-","level":1},{"id":134,"code":"toPosAsp","description":"-","level":1},{"id":156,"code":"warnConvColl","description":"-","level":1},{"id":128,"code":"poserrTall","description":"-","level":1},{"id":148,"code":"washerNotInCycle","description":"-","level":1},{"id":153,"code":"maxAsp1pass","description":"-","level":1},{"id":126,"code":"poserrSpess","description":"-","level":1},{"id":117,"code":"outOfLimSmu","description":"-","level":1},{"id":123,"code":"convFault","description":"-","level":1},{"id":125,"code":"spazFault","description":"-","level":1},{"id":146,"code":"aspLimMin","description":"-","level":1},{"id":145,"code":"aspLimMax","description":"-","level":1},{"id":115,"code":"outOfLimTall","description":"-","level":1},{"id":124,"code":"braConvFault","description":"-","level":1},{"id":122,"code":"pumpsFault","description":"-","level":1},{"id":127,"code":"poserrAng","description":"-","level":1},{"id":131,"code":"toPosSpess","description":"-","level":1},{"id":114,"code":"outOfLimAng","description":"Angle out of limit","level":1},{"id":142,"code":"thickLimMin","description":"-","level":1},{"id":143,"code":"edgeLimMax","description":"-","level":1},{"id":113,"code":"outOfLimSpess","description":"Thickness out of limit","level":1},{"id":149,"code":"lineGlassStopped","description":"-","level":1},{"id":154,"code":"glassConvColl","description":"-","level":1},{"id":109,"code":"oilLowLevel","description":"Low oil level","level":1},{"id":132,"code":"toPosAng","description":"-","level":1},{"id":135,"code":"toPosSpessWash","description":"-","level":1},{"id":151,"code":"dataErr","description":"-","level":1},{"id":119,"code":"airPressLow","description":"-","level":1},{"id":133,"code":"toPosTall","description":"-","level":1},{"id":121,"code":"fanConvFault","description":"-","level":1},{"id":118,"code":"thermalFault","description":"-","level":1},{"id":136,"code":"convManCycle","description":"-","level":1},{"id":141,"code":"thickLimMax","description":"-","level":1},{"id":147,"code":"glassPresAsp","description":"-","level":1},{"id":111,"code":"driveConvFault","description":"Conveyor drive fault","level":1},{"id":138,"code":"washerAlm","description":"-","level":1},{"id":140,"code":"angleLimMIn","description":"-","level":1},{"id":120,"code":"emergency","description":"-","level":1},{"id":139,"code":"angleLimMax","description":"-","level":1},{"id":137,"code":"glassLarge","description":"-","level":1},{"id":116,"code":"outOfLimAsp","description":"-","level":1},{"id":110,"code":"oilPressure","description":"Low oil pressure","level":1},{"id":130,"code":"poserrWash","description":"-","level":1},{"id":152,"code":"axisNotInPos","description":"-","level":1},{"id":112,"code":"oilConvStop","description":"Oil conveyer stop","level":1},{"id":150,"code":"dataNotCompl","description":"-","level":1},{"id":155,"code":"washtooClose","description":"-","level":1}];
220-
vm.structure = [{"label":"Code","property":"code","type":"text","required":true},{"label":"Description","property":"description","type":"template"},{"label":"Level","property":"level","type":"number","min":0,"required":true}];
243+
//vm.jsonTableModel = [{"id":144,"code":"edgeLimMIn","description":"-","level":1},{"id":129,"code":"poserrAsp","description":"-","level":1},{"id":134,"code":"toPosAsp","description":"-","level":1},{"id":156,"code":"warnConvColl","description":"-","level":1},{"id":128,"code":"poserrTall","description":"-","level":1},{"id":148,"code":"washerNotInCycle","description":"-","level":1},{"id":153,"code":"maxAsp1pass","description":"-","level":1},{"id":126,"code":"poserrSpess","description":"-","level":1},{"id":117,"code":"outOfLimSmu","description":"-","level":1},{"id":123,"code":"convFault","description":"-","level":1},{"id":125,"code":"spazFault","description":"-","level":1},{"id":146,"code":"aspLimMin","description":"-","level":1},{"id":145,"code":"aspLimMax","description":"-","level":1},{"id":115,"code":"outOfLimTall","description":"-","level":1},{"id":124,"code":"braConvFault","description":"-","level":1},{"id":122,"code":"pumpsFault","description":"-","level":1},{"id":127,"code":"poserrAng","description":"-","level":1},{"id":131,"code":"toPosSpess","description":"-","level":1},{"id":114,"code":"outOfLimAng","description":"Angle out of limit","level":1},{"id":142,"code":"thickLimMin","description":"-","level":1},{"id":143,"code":"edgeLimMax","description":"-","level":1},{"id":113,"code":"outOfLimSpess","description":"Thickness out of limit","level":1},{"id":149,"code":"lineGlassStopped","description":"-","level":1},{"id":154,"code":"glassConvColl","description":"-","level":1},{"id":109,"code":"oilLowLevel","description":"Low oil level","level":1},{"id":132,"code":"toPosAng","description":"-","level":1},{"id":135,"code":"toPosSpessWash","description":"-","level":1},{"id":151,"code":"dataErr","description":"-","level":1},{"id":119,"code":"airPressLow","description":"-","level":1},{"id":133,"code":"toPosTall","description":"-","level":1},{"id":121,"code":"fanConvFault","description":"-","level":1},{"id":118,"code":"thermalFault","description":"-","level":1},{"id":136,"code":"convManCycle","description":"-","level":1},{"id":141,"code":"thickLimMax","description":"-","level":1},{"id":147,"code":"glassPresAsp","description":"-","level":1},{"id":111,"code":"driveConvFault","description":"Conveyor drive fault","level":1},{"id":138,"code":"washerAlm","description":"-","level":1},{"id":140,"code":"angleLimMIn","description":"-","level":1},{"id":120,"code":"emergency","description":"-","level":1},{"id":139,"code":"angleLimMax","description":"-","level":1},{"id":137,"code":"glassLarge","description":"-","level":1},{"id":116,"code":"outOfLimAsp","description":"-","level":1},{"id":110,"code":"oilPressure","description":"Low oil pressure","level":1},{"id":130,"code":"poserrWash","description":"-","level":1},{"id":152,"code":"axisNotInPos","description":"-","level":1},{"id":112,"code":"oilConvStop","description":"Oil conveyer stop","level":1},{"id":150,"code":"dataNotCompl","description":"-","level":1},{"id":155,"code":"washtooClose","description":"-","level":1}];
244+
//vm.structure = [{"label":"Code","property":"code","type":"text","required":true},{"label":"Description","property":"description","type":"template"},{"label":"Level","property":"level","type":"number","min":0,"required":true}];
221245

222246
vm.autocompOnSelect = function (item) {
223247
console.log(item);

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "angular-uikit",
3-
"version": "1.4.2",
3+
"version": "1.4.3",
44
"description": "Angular Uikit binding",
55
"main": "./dist/angular-uikit.min.js",
66
"scripts": {

src/angular-uikit-autocomplete.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ export default function ukNgAutocomplete($http, $timeout) {
3737
return autocompleteRenderedObjects;
3838
}
3939

40-
4140
function callback(release) {
4241
let search = {};
4342
search[scope.ukLabel ? scope.ukLabel : "search"] = ngModel.$viewValue;
@@ -57,7 +56,7 @@ export default function ukNgAutocomplete($http, $timeout) {
5756
}
5857

5958
ngModel.$formatters = [(function (value) {
60-
let realValue = scope.ukLabel ? value[scope.ukLabel] : value;
59+
let realValue = value && scope.ukLabel ? value[scope.ukLabel] : value;
6160

6261
if (!angular.isArray(source) || source.some(e=>realValue == e.value))
6362
return realValue;

src/angular-uikit-jsontableform-compact.html

+1
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,7 @@
122122
<div data-uk-ng-json-table-form
123123
data-compact="compact"
124124
data-model="m[s.property]"
125+
data-parent="m"
125126
data-can-reorder="s.canReorder"
126127
data-structure="s.items"
127128
data-read-only="readOnly"

src/angular-uikit-jsontableform.html

+1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
<div class="uk-accordion-content-{{s.property}}">
5555
<div data-uk-ng-json-table-form
5656
data-model="m[s.property]"
57+
data-parent="m"
5758
data-can-reorder="s.canReorder"
5859
data-structure="s.items"
5960
data-read-only="readOnly"

src/angular-uikit-jsontableform.js

+15-4
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ export default function ukNgJsonTableForm($compile, $timeout) {
99
scope: {
1010
model: "=",
1111
structure: "=",
12+
parent: "=",
1213
readOnly: "=?",
1314
canReorder: "=?",
1415
allHeaderInHead: "=?",
@@ -32,13 +33,14 @@ export default function ukNgJsonTableForm($compile, $timeout) {
3233
$transcludeFn(scp, function (clone) {
3334
elm.append(clone);
3435
}, null, 'template')
35-
}
36+
};
3637

3738
scope.transcludeInsertTemplate = function (scp, elm) {
3839
$transcludeFn(scp, function (clone) {
3940
elm.append(clone);
4041
}, null, 'insertTemplate')
41-
}
42+
};
43+
4244

4345
if (scope.compact) {
4446
if (scope.oddIteration == undefined)
@@ -64,6 +66,15 @@ export default function ukNgJsonTableForm($compile, $timeout) {
6466
scope.newItem = {};
6567
};
6668

69+
70+
scope.$watch('newItem', function () {
71+
for(let h of scope.structure){
72+
if(h.default && scope.newItem && !scope.newItem[h.property]){
73+
scope.newItem[h.property] = typeof h.default === "function"?h.default(scope.parent, scope.newItem):h.default;
74+
}
75+
}
76+
}, true);
77+
6778
scope.removeItem = function removeItem(index) {
6879
UIkit.modal.confirm(scope.deleteConfirmLabel || "Are you sure?", function () {
6980
$timeout(function () {
@@ -77,13 +88,13 @@ export default function ukNgJsonTableForm($compile, $timeout) {
7788
var secondRow = [];
7889
var countNotArray = function (array) {
7990
return array.filter(function (el) {
80-
return el.type != 'array';
91+
return el.type !== 'array';
8192
}).length;
8293
};
8394
var first = true;
8495
var recur = function (arr) {
8596
arr.forEach(function (s) {
86-
if (s.type != 'array') {
97+
if (s.type !== 'array') {
8798
if (first) {
8899
firstRow.push({ colspan: 1 });
89100
}

0 commit comments

Comments
 (0)