Commit 998ec3a9 authored by Patrick's avatar Patrick
Browse files

index.html, History.md und 72 weitere dateien aktualisiert...

parent 16ad534b
export interface StartOfSourceMap {
file?: string;
sourceRoot?: string;
}
export interface RawSourceMap extends StartOfSourceMap {
version: string;
sources: string[];
names: string[];
sourcesContent?: string[];
mappings: string;
}
export interface Position {
line: number;
column: number;
}
export interface LineRange extends Position {
lastColumn: number;
}
export interface FindPosition extends Position {
// SourceMapConsumer.GREATEST_LOWER_BOUND or SourceMapConsumer.LEAST_UPPER_BOUND
bias?: number;
}
export interface SourceFindPosition extends FindPosition {
source: string;
}
export interface MappedPosition extends Position {
source: string;
name?: string;
}
export interface MappingItem {
source: string;
generatedLine: number;
generatedColumn: number;
originalLine: number;
originalColumn: number;
name: string;
}
export class SourceMapConsumer {
static GENERATED_ORDER: number;
static ORIGINAL_ORDER: number;
static GREATEST_LOWER_BOUND: number;
static LEAST_UPPER_BOUND: number;
constructor(rawSourceMap: RawSourceMap);
computeColumnSpans(): void;
originalPositionFor(generatedPosition: FindPosition): MappedPosition;
generatedPositionFor(originalPosition: SourceFindPosition): LineRange;
allGeneratedPositionsFor(originalPosition: MappedPosition): Position[];
hasContentsOfAllSources(): boolean;
sourceContentFor(source: string, returnNullOnMissing?: boolean): string;
eachMapping(callback: (mapping: MappingItem) => void, context?: any, order?: number): void;
}
export interface Mapping {
generated: Position;
original: Position;
source: string;
name?: string;
}
export class SourceMapGenerator {
constructor(startOfSourceMap?: StartOfSourceMap);
static fromSourceMap(sourceMapConsumer: SourceMapConsumer): SourceMapGenerator;
addMapping(mapping: Mapping): void;
setSourceContent(sourceFile: string, sourceContent: string): void;
applySourceMap(sourceMapConsumer: SourceMapConsumer, sourceFile?: string, sourceMapPath?: string): void;
toString(): string;
}
export interface CodeWithSourceMap {
code: string;
map: SourceMapGenerator;
}
export class SourceNode {
constructor();
constructor(line: number, column: number, source: string);
constructor(line: number, column: number, source: string, chunk?: string, name?: string);
static fromStringWithSourceMap(code: string, sourceMapConsumer: SourceMapConsumer, relativePath?: string): SourceNode;
add(chunk: string): void;
prepend(chunk: string): void;
setSourceContent(sourceFile: string, sourceContent: string): void;
walk(fn: (chunk: string, mapping: MappedPosition) => void): void;
walkSourceContents(fn: (file: string, content: string) => void): void;
join(sep: string): SourceNode;
replaceRight(pattern: string, replacement: string): SourceNode;
toString(): string;
toStringWithSourceMap(startOfSourceMap?: StartOfSourceMap): CodeWithSourceMap;
}
/*
* Copyright 2009-2011 Mozilla Foundation and contributors
* Licensed under the New BSD license. See LICENSE.txt or:
* http://opensource.org/licenses/BSD-3-Clause
*/
exports.SourceMapGenerator = require('./lib/source-map-generator').SourceMapGenerator;
exports.SourceMapConsumer = require('./lib/source-map-consumer').SourceMapConsumer;
exports.SourceNode = require('./lib/source-node').SourceNode;
{
"_from": "postcss-modules-values@^1.3.0",
"_id": "postcss-modules-values@1.3.0",
"_inBundle": false,
"_integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=",
"_location": "/postcss-modules-values",
"_phantomChildren": {
"chalk": "2.4.2",
"supports-color": "5.5.0"
},
"_requested": {
"type": "range",
"registry": true,
"raw": "postcss-modules-values@^1.3.0",
"name": "postcss-modules-values",
"escapedName": "postcss-modules-values",
"rawSpec": "^1.3.0",
"saveSpec": null,
"fetchSpec": "^1.3.0"
},
"_requiredBy": [
"/css-loader"
],
"_resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz",
"_shasum": "ecffa9d7e192518389f42ad0e83f72aec456ea20",
"_spec": "postcss-modules-values@^1.3.0",
"_where": "C:\\Work\\OneDrive - bwstaff\\M4_Lab\\TV3\\NewVersion01\\LAFJLBmf939XYm5gj\\dev\\node_modules\\css-loader",
"author": {
"name": "Glen Maddern"
},
"babel": {
"presets": [
"es2015"
],
"plugins": [
"add-module-exports"
]
},
"bugs": {
"url": "https://github.com/css-modules/postcss-modules-values/issues"
},
"bundleDependencies": false,
"dependencies": {
"icss-replace-symbols": "^1.1.0",
"postcss": "^6.0.1"
},
"deprecated": false,
"description": "PostCSS plugin for CSS Modules to pass arbitrary values between your module files",
"devDependencies": {
"babel-cli": "^6.5.2",
"babel-core": "^6.5.2",
"babel-plugin-add-module-exports": "^0.2.1",
"babel-preset-es2015": "^6.3.13",
"chokidar": "^1.2.0",
"mocha": "^3.0.2",
"standard": "^8.4.0"
},
"homepage": "https://github.com/css-modules/postcss-modules-values#readme",
"keywords": [
"css",
"modules",
"postcss"
],
"license": "ISC",
"main": "lib/index.js",
"name": "postcss-modules-values",
"repository": {
"type": "git",
"url": "git+https://github.com/css-modules/postcss-modules-values.git"
},
"scripts": {
"autotest": "chokidar src test -c 'npm test'",
"build": "babel --out-dir lib src",
"lint": "standard src test",
"posttest": "npm run lint && npm run build",
"prepublish": "npm run build",
"test": "mocha --compilers js:babel-core/register",
"travis": "npm run test"
},
"version": "1.3.0"
}
import postcss from 'postcss'
import replaceSymbols, {replaceAll} from 'icss-replace-symbols'
const matchImports = /^(.+?|\([\s\S]+?\))\s+from\s+("[^"]*"|'[^']*'|[\w-]+)$/
const matchValueDefinition = /(?:\s+|^)([\w-]+):?\s+(.+?)\s*$/g
const matchImport = /^([\w-]+)(?:\s+as\s+([\w-]+))?/
let options = {}
let importIndex = 0
let createImportedName = options && options.createImportedName || ((importName/*, path*/) => `i__const_${importName.replace(/\W/g, '_')}_${importIndex++}`)
export default postcss.plugin('postcss-modules-values', () => (css, result) => {
let importAliases = []
let definitions = {}
const addDefinition = atRule => {
let matches
while (matches = matchValueDefinition.exec(atRule.params)) {
let [/*match*/, key, value] = matches
// Add to the definitions, knowing that values can refer to each other
definitions[key] = replaceAll(definitions, value)
atRule.remove()
}
}
const addImport = atRule => {
let matches = matchImports.exec(atRule.params)
if (matches) {
let [/*match*/, aliases, path] = matches
// We can use constants for path names
if (definitions[path]) path = definitions[path]
let imports = aliases.replace(/^\(\s*([\s\S]+)\s*\)$/, '$1').split(/\s*,\s*/).map(alias => {
let tokens = matchImport.exec(alias)
if (tokens) {
let [/*match*/, theirName, myName = theirName] = tokens
let importedName = createImportedName(myName)
definitions[myName] = importedName
return { theirName, importedName }
} else {
throw new Error(`@import statement "${alias}" is invalid!`)
}
})
importAliases.push({ path, imports })
atRule.remove()
}
}
/* Look at all the @value statements and treat them as locals or as imports */
css.walkAtRules('value', atRule => {
if (matchImports.exec(atRule.params)) {
addImport(atRule)
} else {
if (atRule.params.indexOf('@value') !== -1) {
result.warn('Invalid value definition: ' + atRule.params)
}
addDefinition(atRule)
}
})
/* We want to export anything defined by now, but don't add it to the CSS yet or
it well get picked up by the replacement stuff */
let exportDeclarations = Object.keys(definitions).map(key => postcss.decl({
value: definitions[key],
prop: key,
raws: { before: "\n " }
}))
/* If we have no definitions, don't continue */
if (!Object.keys(definitions).length) return
/* Perform replacements */
replaceSymbols(css, definitions)
/* Add export rules if any */
if (exportDeclarations.length > 0) {
let exportRule = postcss.rule({
selector: `:export`,
raws: { after: "\n" }
})
exportRule.append(exportDeclarations)
css.prepend(exportRule)
}
/* Add import rules */
importAliases.reverse().forEach(({ path, imports }) => {
let importRule = postcss.rule({
selector: `:import(${path})`,
raws: { after: "\n" }
})
imports.forEach(({ theirName, importedName }) => {
importRule.append({
value: theirName,
prop: importedName,
raws: { before: "\n " }
})
})
css.prepend(importRule)
})
})
/* global describe, it */
import postcss from 'postcss'
import assert from 'assert'
import constants from '../src'
const test = (input, expected) => {
let processor = postcss([constants])
assert.equal(processor.process(input).css, expected)
}
describe('constants', () => {
it('should pass through an empty string', () => {
test('', '')
})
it('should export a constant', () => {
test('@value red blue;', ':export {\n red: blue\n}')
})
it('gives an error when there is no semicolon between lines', () => {
const input = '@value red blue\n@value green yellow'
let processor = postcss([constants])
const result = processor.process(input)
const warnings = result.warnings()
assert.equal(warnings.length, 1)
assert.equal(warnings[0].text, 'Invalid value definition: red blue\n@value green yellow')
})
it('should export a more complex constant', () => {
test('@value small (max-width: 599px);', ':export {\n small: (max-width: 599px)\n}')
})
it('should replace constants within the file', () => {
test('@value blue red; .foo { color: blue; }', ':export {\n blue: red;\n}\n.foo { color: red; }')
})
it('should import and re-export a simple constant', () => {
test('@value red from "./colors.css";', ':import("./colors.css") {\n i__const_red_0: red\n}\n:export {\n red: i__const_red_0\n}')
})
it('should import a simple constant and replace usages', () => {
test('@value red from "./colors.css"; .foo { color: red; }', ':import("./colors.css") {\n i__const_red_1: red;\n}\n:export {\n red: i__const_red_1;\n}\n.foo { color: i__const_red_1; }')
})
it('should import and alias a constant and replace usages', () => {
test('@value blue as red from "./colors.css"; .foo { color: red; }', ':import("./colors.css") {\n i__const_red_2: blue;\n}\n:export {\n red: i__const_red_2;\n}\n.foo { color: i__const_red_2; }')
})
it('should import multiple from a single file', () => {
test(
`@value blue, red from "./colors.css";
.foo { color: red; }
.bar { color: blue }`,
`:import("./colors.css") {
i__const_blue_3: blue;
i__const_red_4: red;
}
:export {
blue: i__const_blue_3;
red: i__const_red_4;
}
.foo { color: i__const_red_4; }
.bar { color: i__const_blue_3 }`)
})
it('should import from a definition', () => {
test(
'@value colors: "./colors.css"; @value red from colors;',
':import("./colors.css") {\n i__const_red_5: red\n}\n' +
':export {\n colors: "./colors.css";\n red: i__const_red_5\n}'
)
})
it('should only allow values for paths if defined in the right order', () => {
test(
'@value red from colors; @value colors: "./colors.css";',
':import(colors) {\n i__const_red_6: red\n}\n' +
':export {\n red: i__const_red_6;\n colors: "./colors.css"\n}'
)
})
it('should allow transitive values', () => {
test(
'@value aaa: red;\n@value bbb: aaa;\n.a { color: bbb; }',
':export {\n aaa: red;\n bbb: red;\n}\n.a { color: red; }'
)
})
it('should allow transitive values within calc', () => {
test(
'@value base: 10px;\n@value large: calc(base * 2);\n.a { margin: large; }',
':export {\n base: 10px;\n large: calc(10px * 2);\n}\n.a { margin: calc(10px * 2); }'
)
})
it('should preserve import order', () => {
test(
'@value a from "./a.css"; @value b from "./b.css";',
':import("./a.css") {\n i__const_a_7: a\n}\n' +
':import("./b.css") {\n i__const_b_8: b\n}\n' +
':export {\n a: i__const_a_7;\n b: i__const_b_8\n}'
)
})
it('should allow custom-property-style names', () => {
test(
'@value --red from "./colors.css"; .foo { color: --red; }',
':import("./colors.css") {\n i__const___red_9: --red;\n}\n' +
':export {\n --red: i__const___red_9;\n}\n' +
'.foo { color: i__const___red_9; }')
})
it('should allow all colour types', () => {
test(
'@value named: red; @value 3char #0f0; @value 6char #00ff00; @value rgba rgba(34, 12, 64, 0.3); @value hsla hsla(220, 13.0%, 18.0%, 1);\n' +
'.foo { color: named; background-color: 3char; border-top-color: 6char; border-bottom-color: rgba; outline-color: hsla; }',
':export {\n named: red;\n 3char: #0f0;\n 6char: #00ff00;\n rgba: rgba(34, 12, 64, 0.3);\n hsla: hsla(220, 13.0%, 18.0%, 1);\n}\n' +
'.foo { color: red; background-color: #0f0; border-top-color: #00ff00; border-bottom-color: rgba(34, 12, 64, 0.3); outline-color: hsla(220, 13.0%, 18.0%, 1); }')
})
it('should import multiple from a single file on multiple lines', () => {
test(
`@value (
blue,
red
) from "./colors.css";
.foo { color: red; }
.bar { color: blue }`,
`:import("./colors.css") {
i__const_blue_10: blue;
i__const_red_11: red;
}
:export {
blue: i__const_blue_10;
red: i__const_red_11;
}
.foo { color: i__const_red_11; }
.bar { color: i__const_blue_10 }`)
})
it('should allow definitions with commas in them', () => {
test(
'@value coolShadow: 0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14) ;\n' +
'.foo { box-shadow: coolShadow; }',
':export {\n coolShadow: 0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14);\n}\n' +
'.foo { box-shadow: 0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14); }')
})
it('should allow values with nested parantheses', () => {
test(
'@value aaa: color(red lightness(50%));',
':export {\n aaa: color(red lightness(50%))\n}'
)
})
})
......@@ -838,14 +838,6 @@
"showCompass": true,
"rotationPerFrame": 0.5
},
{
"useLocalCRS": false,
"type": "vcs.vcm.widgets.Planning",
"serviceUrl": "http://smartvillages.online/",
"projectId": "Q4at5xXnP93Erwtm5",
"scenarioId": "2JQ3od8igw4LRzTR5",
"userLocalCRS": true
},
{
"type": "vcs.vcm.widgets.OverviewMap",
"name": "Overview Map",
......
......@@ -219,22 +219,22 @@ function Questionnaire(part) {
document.getElementById("WeilimdorfAreas").style.display = "none";
document.getElementById("UmfrageOne").style.display = "block";
showTour();
if (part == '1') {
var iframe = document.getElementById("iframe");
var ans = iframe.contentWindow.document.getElementById("answer995397X21X122")
ans.value = "A1"
}else if (part == '2'){
var iframe = document.getElementById("iframe");
var ans = iframe.contentWindow.document.getElementById("answer995397X21X122")
ans.value = "A2"
}else if (part == '3'){
var iframe = document.getElementById("iframe");
var ans = iframe.contentWindow.document.getElementById("answer995397X21X122")
ans.value = "A3"
}
// if (part == '1') {
// var iframe = document.getElementById("iframe");
// var ans = iframe.contentWindow.document.getElementById("answer995397X21X122")
// ans.value = "A1"
// }else if (part == '2'){
// var iframe = document.getElementById("iframe");
// var ans = iframe.contentWindow.document.getElementById("answer995397X21X122")
// ans.value = "A2"
// }else if (part == '3'){
// var iframe = document.getElementById("iframe");
// var ans = iframe.contentWindow.document.getElementById("answer995397X21X122")
// ans.value = "A3"
// }
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment