mirror of
https://github.com/FoggedLens/iD.git
synced 2026-02-13 09:12:52 +00:00
add iD.ui.preset
This commit is contained in:
20
Makefile
20
Makefile
@@ -55,6 +55,8 @@ MODULE_TARGETS = \
|
||||
js/lib/id/ui/intro.js \
|
||||
js/lib/id/svg.js \
|
||||
js/lib/id/ui.js \
|
||||
js/lib/id/ui/intro.js \
|
||||
js/lib/id/ui/preset.js \
|
||||
js/lib/id/util.js \
|
||||
js/lib/id/validations.js
|
||||
|
||||
@@ -106,6 +108,10 @@ js/lib/id/ui.js: $(shell find modules/ui -type f)
|
||||
@rm -f $@
|
||||
node_modules/.bin/rollup -f umd -n iD.ui modules/ui/index.js --no-strict -o $@
|
||||
|
||||
js/lib/id/ui/preset.js: $(shell find modules/ui/preset -type f)
|
||||
@rm -f $@
|
||||
node_modules/.bin/rollup -f umd -n iD.ui.preset modules/ui/preset/index.js --no-strict -o $@
|
||||
|
||||
js/lib/id/util.js: $(shell find modules/util -type f)
|
||||
@rm -f $@
|
||||
node_modules/.bin/rollup -f umd -n iD.util modules/util/index.js --no-strict -o $@
|
||||
@@ -136,20 +142,8 @@ dist/iD.js: \
|
||||
js/lib/marked.js \
|
||||
js/id/start.js \
|
||||
js/id/id.js \
|
||||
$(MODULE_TARGETS) \
|
||||
js/id/ui.js \
|
||||
js/id/ui/preset/access.js \
|
||||
js/id/ui/preset/address.js \
|
||||
js/id/ui/preset/check.js \
|
||||
js/id/ui/preset/combo.js \
|
||||
js/id/ui/preset/cycleway.js \
|
||||
js/id/ui/preset/input.js \
|
||||
js/id/ui/preset/localized.js \
|
||||
js/id/ui/preset/maxspeed.js \
|
||||
js/id/ui/preset/radio.js \
|
||||
js/id/ui/preset/restrictions.js \
|
||||
js/id/ui/preset/textarea.js \
|
||||
js/id/ui/preset/wikipedia.js \
|
||||
$(MODULE_TARGETS) \
|
||||
js/id/end.js \
|
||||
js/lib/locale.js \
|
||||
data/introGraph.js
|
||||
|
||||
14
index.html
14
index.html
@@ -49,20 +49,8 @@
|
||||
|
||||
<script src='data/data_dev.js'></script>
|
||||
|
||||
<script src='js/id/ui/preset/access.js'></script>
|
||||
<script src='js/id/ui/preset/address.js'></script>
|
||||
<script src='js/id/ui/preset/check.js'></script>
|
||||
<script src='js/id/ui/preset/combo.js'></script>
|
||||
<script src='js/id/ui/preset/cycleway.js'></script>
|
||||
<script src='js/id/ui/preset/input.js'></script>
|
||||
<script src='js/id/ui/preset/localized.js'></script>
|
||||
<script src='js/id/ui/preset/maxspeed.js'></script>
|
||||
<script src='js/id/ui/preset/radio.js'></script>
|
||||
<script src='js/id/ui/preset/restrictions.js'></script>
|
||||
<script src='js/id/ui/preset/textarea.js'></script>
|
||||
<script src='js/id/ui/preset/wikipedia.js'></script>
|
||||
|
||||
<script src='js/lib/id/ui/intro.js'></script>
|
||||
<script src='js/lib/id/ui/preset.js'></script>
|
||||
|
||||
<script src='js/lib/locale.js'></script>
|
||||
<script src='data/introGraph.js'></script>
|
||||
|
||||
@@ -247,6 +247,40 @@
|
||||
return d3.rebind(step, event, 'on');
|
||||
}
|
||||
|
||||
|
||||
function pointBox(point, context) {
|
||||
var rect = context.surfaceRect();
|
||||
point = context.projection(point);
|
||||
return {
|
||||
left: point[0] + rect.left - 30,
|
||||
top: point[1] + rect.top - 50,
|
||||
width: 60,
|
||||
height: 70
|
||||
};
|
||||
}
|
||||
|
||||
function pad(box, padding, context) {
|
||||
if (box instanceof Array) {
|
||||
var rect = context.surfaceRect();
|
||||
box = context.projection(box);
|
||||
box = {
|
||||
left: box[0] + rect.left,
|
||||
top: box[1] + rect.top
|
||||
};
|
||||
}
|
||||
return {
|
||||
left: box.left - padding,
|
||||
top: box.top - padding,
|
||||
width: (box.width || 0) + 2 * padding,
|
||||
height: (box.width || 0) + 2 * padding
|
||||
};
|
||||
}
|
||||
|
||||
function icon(name, svgklass) {
|
||||
return '<svg class="icon ' + (svgklass || '') + '">' +
|
||||
'<use xlink:href="' + name + '"></use></svg>';
|
||||
}
|
||||
|
||||
function navigation(context, reveal) {
|
||||
var event = d3.dispatch('done'),
|
||||
timeouts = [];
|
||||
@@ -573,6 +607,9 @@
|
||||
|
||||
exports.area = area;
|
||||
exports.line = line;
|
||||
exports.pad = pad;
|
||||
exports.pointBox = pointBox;
|
||||
exports.icon = icon;
|
||||
exports.navigation = navigation;
|
||||
exports.point = point;
|
||||
exports.startEditing = startEditing;
|
||||
|
||||
1862
js/lib/id/ui/preset.js
Normal file
1862
js/lib/id/ui/preset.js
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
iD.ui.preset.access = function(field) {
|
||||
export function access(field) {
|
||||
var dispatch = d3.dispatch('change'),
|
||||
items;
|
||||
|
||||
@@ -193,4 +193,4 @@ iD.ui.preset.access = function(field) {
|
||||
};
|
||||
|
||||
return d3.rebind(access, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
iD.ui.preset.address = function(field, context) {
|
||||
export function address(field, context) {
|
||||
var dispatch = d3.dispatch('init', 'change'),
|
||||
wrap,
|
||||
entity,
|
||||
@@ -216,4 +216,4 @@ iD.ui.preset.address = function(field, context) {
|
||||
};
|
||||
|
||||
return d3.rebind(address, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
iD.ui.preset.check =
|
||||
iD.ui.preset.defaultcheck = function(field) {
|
||||
export { check as defaultcheck };
|
||||
export function check(field) {
|
||||
var dispatch = d3.dispatch('change'),
|
||||
options = field.strings && field.strings.options,
|
||||
values = [],
|
||||
@@ -79,4 +79,4 @@ iD.ui.preset.defaultcheck = function(field) {
|
||||
};
|
||||
|
||||
return d3.rebind(check, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -1,6 +1,5 @@
|
||||
iD.ui.preset.combo =
|
||||
iD.ui.preset.typeCombo =
|
||||
iD.ui.preset.multiCombo = function(field, context) {
|
||||
export { combo as typeCombo, combo as multiCombo };
|
||||
export function combo(field, context) {
|
||||
var dispatch = d3.dispatch('change'),
|
||||
isMulti = (field.type === 'multiCombo'),
|
||||
optstrings = field.strings && field.strings.options,
|
||||
@@ -304,4 +303,4 @@ iD.ui.preset.multiCombo = function(field, context) {
|
||||
|
||||
|
||||
return d3.rebind(combo, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
iD.ui.preset.cycleway = function(field) {
|
||||
export function cycleway(field) {
|
||||
var dispatch = d3.dispatch('change'),
|
||||
items;
|
||||
|
||||
@@ -97,4 +97,4 @@ iD.ui.preset.cycleway = function(field) {
|
||||
};
|
||||
|
||||
return d3.rebind(cycleway, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
12
modules/ui/preset/index.js
Normal file
12
modules/ui/preset/index.js
Normal file
@@ -0,0 +1,12 @@
|
||||
export { access } from './access';
|
||||
export { address } from './address';
|
||||
export { check, defaultcheck} from './check';
|
||||
export { combo, typeCombo, multiCombo } from './combo';
|
||||
export { cycleway } from './cycleway';
|
||||
export { text, url, number, email, tel } from './input';
|
||||
export { localized } from './localized';
|
||||
export { maxspeed } from './maxspeed';
|
||||
export { radio } from './radio';
|
||||
export { restrictions } from './restrictions';
|
||||
export { textarea } from './textarea';
|
||||
export { wikipedia } from './wikipedia';
|
||||
@@ -1,8 +1,10 @@
|
||||
iD.ui.preset.text =
|
||||
iD.ui.preset.number =
|
||||
iD.ui.preset.tel =
|
||||
iD.ui.preset.email =
|
||||
iD.ui.preset.url = function(field, context) {
|
||||
export {
|
||||
url as text,
|
||||
url as number,
|
||||
url as tel,
|
||||
url as email
|
||||
};
|
||||
export function url(field, context) {
|
||||
|
||||
var dispatch = d3.dispatch('change'),
|
||||
input,
|
||||
@@ -85,4 +87,4 @@ iD.ui.preset.url = function(field, context) {
|
||||
};
|
||||
|
||||
return d3.rebind(i, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
iD.ui.preset.localized = function(field, context) {
|
||||
export function localized(field, context) {
|
||||
var dispatch = d3.dispatch('change', 'input'),
|
||||
wikipedia = iD.services.wikipedia(),
|
||||
input, localizedInputs, wikiTitles,
|
||||
@@ -239,4 +239,4 @@ iD.ui.preset.localized = function(field, context) {
|
||||
};
|
||||
|
||||
return d3.rebind(localized, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
iD.ui.preset.maxspeed = function(field, context) {
|
||||
export function maxspeed(field, context) {
|
||||
var dispatch = d3.dispatch('change'),
|
||||
entity,
|
||||
imperial,
|
||||
@@ -107,4 +107,4 @@ iD.ui.preset.maxspeed = function(field, context) {
|
||||
};
|
||||
|
||||
return d3.rebind(maxspeed, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
iD.ui.preset.radio = function(field) {
|
||||
export function radio(field) {
|
||||
var dispatch = d3.dispatch('change'),
|
||||
labels, radios, placeholder;
|
||||
|
||||
@@ -72,4 +72,4 @@ iD.ui.preset.radio = function(field) {
|
||||
};
|
||||
|
||||
return d3.rebind(radio, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
iD.ui.preset.restrictions = function(field, context) {
|
||||
export function restrictions(field, context) {
|
||||
var dispatch = d3.dispatch('change'),
|
||||
hover = iD.behavior.Hover(context),
|
||||
vertexID,
|
||||
@@ -171,4 +171,4 @@ iD.ui.preset.restrictions = function(field, context) {
|
||||
};
|
||||
|
||||
return d3.rebind(restrictions, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
iD.ui.preset.textarea = function(field) {
|
||||
export function textarea(field) {
|
||||
var dispatch = d3.dispatch('change'),
|
||||
input;
|
||||
|
||||
@@ -34,4 +34,4 @@ iD.ui.preset.textarea = function(field) {
|
||||
};
|
||||
|
||||
return d3.rebind(textarea, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
iD.ui.preset.wikipedia = function(field, context) {
|
||||
export function wikipedia(field, context) {
|
||||
var dispatch = d3.dispatch('change'),
|
||||
wikipedia = iD.services.wikipedia(),
|
||||
wikidata = iD.services.wikidata(),
|
||||
@@ -195,4 +195,4 @@ iD.ui.preset.wikipedia = function(field, context) {
|
||||
};
|
||||
|
||||
return d3.rebind(wiki, dispatch, 'on');
|
||||
};
|
||||
}
|
||||
@@ -57,14 +57,8 @@
|
||||
<script src='../js/id/ui.js'></script>
|
||||
<script src='../js/lib/id/ui.js'></script>
|
||||
|
||||
<script src='../js/lib/id/ui/preset.js'></script>
|
||||
|
||||
<script src='../js/id/ui/preset/access.js'></script>
|
||||
<script src='../js/id/ui/preset/address.js'></script>
|
||||
<script src='../js/id/ui/preset/input.js'></script>
|
||||
<script src='../js/id/ui/preset/check.js'></script>
|
||||
<script src='../js/id/ui/preset/combo.js'></script>
|
||||
<script src='../js/id/ui/preset/localized.js'></script>
|
||||
<script src='../js/id/ui/preset/wikipedia.js'></script>
|
||||
|
||||
<script src='../js/lib/locale.js'></script>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user