Add center image support

This commit is contained in:
Paulo Gustavo Veiga 2022-02-14 15:56:02 -08:00
parent 3119e00b9f
commit 58c26330ae
26 changed files with 240 additions and 70 deletions

View File

@ -15,23 +15,31 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import SizeType from '../SizeType';
import Exporter from './Exporter';
class SVGExporter extends Exporter {
private svgElement: Element;
private prolog = '<?xml version="1.0" encoding="utf-8" standalone="yes"?>\n';
private static prolog = '<?xml version="1.0" encoding="utf-8" standalone="yes"?>\n';
constructor(svgElement: Element) {
private static regexpTranslate = /translate\((-?[0-9]+.[0-9]+),(-?[0-9]+.[0-9]+)\)/;
private static padding = 100;
private adjustToFit: boolean;
constructor(svgElement: Element, adjustToFit = true) {
super('svg', 'image/svg+xml');
this.svgElement = svgElement;
this.adjustToFit = adjustToFit;
}
export(): Promise<string> {
// Replace all images for in-line images ...
let svgTxt: string = new XMLSerializer()
.serializeToString(this.svgElement);
svgTxt = this.prolog + svgTxt;
svgTxt = SVGExporter.prolog + svgTxt;
// Are namespace declared ?. Otherwise, force the declaration ...
if (svgTxt.indexOf('xmlns:xlink=') === -1) {
@ -39,15 +47,68 @@ class SVGExporter extends Exporter {
}
// Add white background. This is mainly for PNG export ...
const svgDoc = SVGExporter.parseXMLString(svgTxt, 'application/xml');
let svgDoc = SVGExporter.parseXMLString(svgTxt, 'application/xml');
const svgElement = svgDoc.getElementsByTagName('svg')[0];
svgElement.setAttribute('style', 'background-color:white');
svgElement.setAttribute('focusable', 'false');
// Does need to be adjust ?.
if (this.adjustToFit) {
svgDoc = this.normalizeToFit(svgDoc);
}
const result = new XMLSerializer()
.serializeToString(svgDoc);
return Promise.resolve(result);
}
private normalizeToFit(document: Document): Document {
// Collect all group elements ...
const rectElems = Array.from(document.querySelectorAll('g>rect'));
const translates: SizeType[] = rectElems
.map((rect: Element) => {
const g = rect.parentElement;
const transformStr = g.getAttribute('transform');
// Looking to parse translate(220.00000,279.00000) scale(1.00000,1.00000)
const match = transformStr.match(SVGExporter.regexpTranslate);
let result: SizeType = { width: 0, height: 0 };
if (match !== null) {
result = { width: Number.parseFloat(match[1]), height: Number.parseFloat(match[2]) };
// Add rect size ...
if (result.width > 0) {
const rectWidth = Number.parseFloat(rect.getAttribute('width'));
result.width += rectWidth;
}
if (result.height > 0) {
const rectHeight = Number.parseFloat(rect.getAttribute('height'));
result.height += rectHeight;
}
}
return result;
});
// Find max and mins ...
const widths = translates.map((t) => t.width).sort((a, b) => a - b);
const heights = translates.map((t) => t.height).sort((a, b) => a - b);
const svgElem = document.firstChild as Element;
const minX = widths[0] - SVGExporter.padding;
const minY = heights[0] - SVGExporter.padding;
const maxX = widths[widths.length - 1] + SVGExporter.padding;
const maxY = heights[heights.length - 1] + SVGExporter.padding;
svgElem.setAttribute('viewBox', `${minX} ${minY} ${maxX + Math.abs(minX)} ${maxY + Math.abs(minY)}`);
svgElem.setAttribute('preserveAspectRatio', 'xMidYMid');
return document;
}
private static parseXMLString = (xmlStr: string, mimeType: DOMParserSupportedType) => {
const parser = new DOMParser();
const xmlDoc = parser.parseFromString(xmlStr, mimeType);
@ -56,7 +117,7 @@ class SVGExporter extends Exporter {
if (xmlDoc.getElementsByTagName('parsererror').length > 0) {
const xmmStr = new XMLSerializer().serializeToString(xmlDoc);
console.log(xmmStr);
throw new Error(`Unexpected error parsing: ${xmlStr}. Error: ${xmmStr}`);
throw new Error(`Unexpected error parsing: ${xmlStr}.Error: ${xmmStr}`);
}
return xmlDoc;

View File

@ -70,11 +70,6 @@ class NodeModel extends INodeModel {
return this._features;
}
/**
* @param feature
* @throws will throw an error if feature is null or undefined
* @throws will throw an error if the feature could not be removed
*/
removeFeature(feature: FeatureModel): void {
$assert(feature, 'feature can not be null');
const size = this._features.length;
@ -127,9 +122,6 @@ class NodeModel extends INodeModel {
return this._properties[key];
}
/**
* @return {mindplot.model.NodeModel} an identical clone of the NodeModel
*/
clone(): NodeModel {
const result = new NodeModel(this.getType(), this._mindmap);
result._children = this._children.map((node) => {
@ -143,10 +135,6 @@ class NodeModel extends INodeModel {
return result;
}
/**
* Similar to clone, assign new id to the elements ...
* @return {mindplot.model.NodeModel}
*/
deepCopy(): NodeModel {
const result = new NodeModel(this.getType(), this._mindmap);
result._children = this._children.map((node) => {
@ -163,20 +151,12 @@ class NodeModel extends INodeModel {
return result;
}
/**
* @param {mindplot.model.NodeModel} child
* @throws will throw an error if child is null, undefined or not a NodeModel object
*/
append(child: NodeModel): void {
$assert(child && child.isNodeModel(), 'Only NodeModel can be appended to Mindmap object');
this._children.push(child);
child._parent = this;
}
/**
* @param {mindplot.model.NodeModel} child
* @throws will throw an error if child is null, undefined or not a NodeModel object
*/
removeChild(child: NodeModel): void {
$assert(child && child.isNodeModel(), 'Only NodeModel can be appended to Mindmap object.');
this._children = this._children.filter((c) => c !== child);

View File

@ -1,8 +1,6 @@
import path from 'path';
import fs from 'fs';
import { expect, test } from '@jest/globals'; // Workaround for cypress conflict
import Mindmap from '../../../src/components/model/Mindmap';
import XMLSerializerFactory from '../../../src/components/persistence/XMLSerializerFactory';
import SVGExporter from '../../../src/components/export/SVGExporter';
import { parseXMLFile, setupBlob, exporterAssert } from './Helper';
@ -12,14 +10,6 @@ describe('SVG export test execution', () => {
test.each(fs.readdirSync(path.resolve(__dirname, './input/'))
.filter((f) => f.endsWith('.wxml'))
.map((filename: string) => filename.split('.')[0]))('Exporting %p suite', async (testName: string) => {
// Load mindmap DOM ...
const mindmapPath = path.resolve(__dirname, `./input/${testName}.wxml`);
const mapDocument = parseXMLFile(mindmapPath, 'text/xml');
// Convert to mindmap ...
const serializer = XMLSerializerFactory.createInstanceFromDocument(mapDocument);
const mindmap: Mindmap = serializer.loadFromDom(mapDocument, testName);
// Load SVG ...
const svgPath = path.resolve(__dirname, `./input/${testName}.svg`);
expect(fs.existsSync(svgPath)).toEqual(true);

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-609.4499999999999 -272.425 1224.00000 765.00000" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-423.5 -433 1123.5 872" style="background-color:white">
<path style="fill:none " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M191.00,208.00 C200.60,208 210.20,333.00 219.80,333.00"/>
<path style="fill:none " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M191.00,208.00 C200.77,208 210.53,301.00 220.30,301.00"/>
<path style="fill:none " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M191.00,208.00 C200.60,208 210.20,269.00 219.80,269.00"/>

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

@ -1,6 +1,6 @@
<map name="bug2" version="tango"><topic central="true" text="SaberMás" id="1"><topic position="271,-39" order="8" text="Utilización de medios de expresión artística, digitales y analógicos" id="5"/><topic position="-181,-17" order="5" text="Precio también limitado: 100-120?" id="9"/><topic position="132,165" order="14" text="Talleres temáticos" id="2"><topic position="242,57" order="0" text="Naturaleza" id="13"><topic position="362,57" order="0" text="Animales, Plantas, Piedras" id="17"/></topic><topic position="245,84" order="1" text="Arqueología" id="21"/><topic position="236,138" order="3" text="Energía" id="18"/><topic position="244,192" order="5" text="Astronomía" id="16"/><topic position="245,219" order="6" text="Arquitectura" id="20"/><topic position="234,246" order="7" text="Cocina" id="11"/><topic position="234,273" order="8" text="Poesía" id="24"/><topic position="256,111" order="2" text="Culturas Antiguas" id="25"><topic position="378,111" order="0" text="Egipto, Grecia, China..." id="26"/></topic><topic position="248,165" order="4" text="Paleontología" id="38"/></topic><topic position="-168,-49" order="3" text="Duración limitada: 5-6 semanas" id="6"/><topic position="-181,16" order="7" text="Niños y niñas que quieren saber más" id="7"/><topic position="-184,-81" order="1" text="Alternativa a otras actividades de ocio" id="8"/><topic position="255,-6" order="10" text="Uso de la tecnología durante todo el proceso de aprendizaje" id="23"/><topic position="336,-137" order="2" text="Estructura PBL: aprendemos cuando buscamos respuestas a nuestras propias preguntas " id="3"/><topic position="238,-105" order="4" text="Trabajo basado en la experimentación y en la investigación" id="4"/><topic position="-201,48" order="9" text="De 8 a 12 años, sin separación por edades" id="10"/><topic position="-146,81" order="11" text="Máximo 10/1 por taller" id="19"/><topic position="211,-72" order="6" text="Actividades centradas en el contexto cercano" id="37"/><topic position="303,27" order="12" text="Flexibilidad en el uso de las lenguas de trabajo (inglés, castellano, esukara?)" id="22"/><topic position="206,-220" order="0" text="Complementamos el trabajo de la escuela" shape="rounded rectagle" id="27"><note><![CDATA[Todos los contenidos de los talleres están relacionados con el currículo de la enseñanza básica.
<map name="bug2" version="tango"><topic central="true" text="SaberMás" id="1"><topic position="271,-39" order="0" text="Utilización de medios de expresión artística, digitales y analógicos" id="5"/><topic position="-181,-17" order="1" text="Precio también limitado: 100-120?" id="9"/><topic position="132,165" order="2" text="Talleres temáticos" id="2"><topic position="242,57" order="0" text="Naturaleza" id="13"><topic position="362,57" order="0" text="Animales, Plantas, Piedras" id="17"/></topic><topic position="245,84" order="1" text="Arqueología" id="21"/><topic position="236,138" order="2" text="Energía" id="18"/><topic position="244,192" order="3" text="Astronomía" id="16"/><topic position="245,219" order="4" text="Arquitectura" id="20"/><topic position="234,246" order="5" text="Cocina" id="11"/><topic position="234,273" order="6" text="Poesía" id="24"/><topic position="256,111" order="7" text="Culturas Antiguas" id="25"><topic position="378,111" order="0" text="Egipto, Grecia, China..." id="26"/></topic><topic position="248,165" order="8" text="Paleontología" id="38"/></topic><topic position="-168,-49" order="3" text="Duración limitada: 5-6 semanas" id="6"/><topic position="-181,16" order="4" text="Niños y niñas que quieren saber más" id="7"/><topic position="-184,-81" order="5" text="Alternativa a otras actividades de ocio" id="8"/><topic position="255,-6" order="6" text="Uso de la tecnología durante todo el proceso de aprendizaje" id="23"/><topic position="336,-137" order="7" text="Estructura PBL: aprendemos cuando buscamos respuestas a nuestras propias preguntas " id="3"/><topic position="238,-105" order="8" text="Trabajo basado en la experimentación y en la investigación" id="4"/><topic position="-201,48" order="9" text="De 8 a 12 años, sin separación por edades" id="10"/><topic position="-146,81" order="10" text="Máximo 10/1 por taller" id="19"/><topic position="211,-72" order="11" text="Actividades centradas en el contexto cercano" id="37"/><topic position="303,27" order="12" text="Flexibilidad en el uso de las lenguas de trabajo (inglés, castellano, esukara?)" id="22"/><topic position="206,-220" order="13" text="Complementamos el trabajo de la escuela" shape="rounded rectagle" id="27"><note><![CDATA[Todos los contenidos de los talleres están relacionados con el currículo de la enseñanza básica.
A diferencia de la práctica tradicional, pretendemos ahondar en el conocimiento partiendo de lo que realmente interesa al niño o niña,
ayudándole a que encuentre respuesta a las preguntas que él o ella se plantea.
Por ese motivo, SaberMás proyecta estar al lado de los niños que necesitan una motivación extra para entender la escuela y fluir en ella,
y también al lado de aquellos a quienes la curiosidad y las ganas de saber les lleva más allá.]]></note><topic position="477,-220" order="2" text="Cada uno va a su ritmo, y cada cual pone sus límites" id="30"/><topic position="425,-193" order="3" text="Aprendemos todos de todos" id="31"/><topic position="440,-167" order="4" text="Valoramos lo que hemos aprendido" id="33"/><topic position="468,-273" order="0" text="SaberMás trabaja con, desde y para la motivación" shape="line" id="28"/><topic position="458,-247" order="1" text="Trabajamos en equipo en nuestros proyectos " id="32"/></topic></topic></map>
y también al lado de aquellos a quienes la curiosidad y las ganas de saber les lleva más allá.]]></note><topic position="477,-220" order="0" text="Cada uno va a su ritmo, y cada cual pone sus límites" id="30"/><topic position="425,-193" order="1" text="Aprendemos todos de todos" id="31"/><topic position="440,-167" order="2" text="Valoramos lo que hemos aprendido" id="33"/><topic position="468,-273" order="3" text="SaberMás trabaja con, desde y para la motivación" shape="line" id="28"/><topic position="458,-247" order="4" text="Trabajamos en equipo en nuestros proyectos " id="32"/></topic></topic></map>

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-277.95 -272.425 1284.00071 802.50044" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-1282.5 -2422 2740 4851" style="background-color:white">
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>
<path stroke-width="2px" stroke="#9b74e6" stroke-opacity="1" visibility="visible" d="M607.8536585365854,-1362 L613.2957123430759,-1359.4733321612723 M607.8536585365854,-1362 L605.3269906978576,-1356.5579461935095"/>
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>

Before

Width:  |  Height:  |  Size: 443 KiB

After

Width:  |  Height:  |  Size: 443 KiB

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-277.95 -272.425 1224.00000 765.00000" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-457 -265 961 526" style="background-color:white">
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>
<path stroke-width="2px" stroke="#9b74e6" stroke-opacity="1" visibility="visible" d="M-277.25396825396825,-31 L-271.352776723551,-32.084406990632225 M-277.25396825396825,-31 L-276.16956126333605,-25.098808469582778"/>
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-204.6358490802649 -386.67631966381197 1583.04984 989.40615" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-849 -913 3563 1731" style="background-color:white">
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>
<path stroke-width="2px" stroke="#9b74e6" stroke-opacity="1" visibility="visible" d="M581.7268292682927,-45 L582.3818502546526,-50.96413845475004 M581.7268292682927,-45 L587.6909677230427,-44.34497901364017"/>
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>

Before

Width:  |  Height:  |  Size: 328 KiB

After

Width:  |  Height:  |  Size: 328 KiB

View File

@ -1,5 +1,5 @@
<map name="complex" version="tango"><topic central="true" text="PPM Plan" id="1" bgColor="#32e36a"><topic position="241,250" order="10" text="Business Development " id="4" fontStyle=";;;bold;;"/><topic position="226,-100" order="2" text="Backlog Management" shape="line" id="18" fontStyle=";;;bold;;"><link url="https://docs.google.com/a/freeform.ca/drawings/d/1mrtkVAN3_XefJJCgfxw4Va6xk9TVDBKXDt_uzyIF4Us/edit" urlType="url"/></topic><topic position="-193,50" order="5" text="Freeform IT" id="10" fontStyle=";;;bold;;"/><topic position="-271,-50" order="3" text="Client Project Management" id="204" fontStyle=";;;bold;;"/><topic position="-183,-150" order="7" text="Governance &amp; Executive" id="206" fontStyle=";;;bold;;"/><topic position="124,-200" order="8" text="Finance" id="5" fontStyle=";;;bold;;"/><topic position="176,-150" order="6" text="Administration" id="3" fontStyle=";;;bold;;"/><topic position="222,100" order="4" text="Human Resources" id="154" fontStyle=";;;bold;;"><note><![CDATA[HR Vision: Freeform Solutions is successful at its mission, sustainable as an organization AND is a great place to work.
HR Mission: To provide a positive HR service experience for applicants and employees, and collaborate with departments to recruit, develop, support, and retain diverse and talented employees who are the key to Freeforms reputation and success.]]></note></topic><topic position="-202,150" order="9" text="Freeform Hosting" id="16" fontStyle=";;;bold;;"/><topic position="197,50" order="0" text="Community Outreach" id="247" fontStyle=";;;bold;;"/><topic position="124,300" order="12" text="R&amp;D" id="261" fontStyle=";;;bold;;"><topic position="230,289" order="0" text="Goals" id="263"/><topic position="239,313" order="1" text="Formulize" id="264"/></topic><topic position="-158,0" order="1" text="Probono" id="268"><topic position="-273,1" order="0" id="269"/></topic></topic><topic position="1558,-249" text="Strategy 2: Talent Development" id="31"><note><![CDATA[Strategy #2: Support the talent development of our employees through professional development and learning and through improved performance management.]]></note><topic position="1817,-260" order="0" text="Strategic Priority 2a: Personal Plans" id="113"><note><![CDATA[Each employee will have a personal Professional Development Plan. ]]></note></topic><topic position="1869,-236" order="1" text="Strategic Priority 2b: External learning matches organ. goals" id="114"><note><![CDATA[Each department of Freeform will identify areas that need development to meet overall FS goals. Eg. Project Manager may identify needed improvement in a development tool. Or... Bus. Dev. may identify a new need in NFP that FS could fill within mandate, if training were provided. Professional Dev. priority will be given to proposals for development with clear ROIs.]]></note></topic><topic position="1831,-212" order="2" text="Strategic Priority 2c: Learning Environment" id="116"><note><![CDATA[Learning and innovation are an essential part of providing the best solutions to NFPs. Cost effective internal learning and time to explore innovation will be encouraged, provided they conform with organization goal and clear ROI is demonstrated.]]></note></topic><topic position="1766,-188" order="3" text="So That..." id="112"><icon id="object_rainbow"/><note><![CDATA[(So that... our employees have improved skills and knowledge, So that... they are highly competent and can work well in agile teams and feel fulfilled and self actualized... So that we can so the best work possible, for the least cost, in the shortest time for other NFPs, So that... NFPs can help those who need it.)]]></note></topic></topic><topic position="1952,168" text="Strategy 4: Inclusive, Positive Environment" id="105"><note><![CDATA[Strategy #4: Foster a diverse, inclusive community with a positive work environment.]]></note><topic position="2229,142" order="0" text="Strategic Priority 4a:Feedback" id="119"><note><![CDATA[Conduct regular organizational feedback assessments and collaborate to improve the work climate]]></note></topic><topic position="2246,166" order="1" text="Strategic Priority 4b: Anti Harassment" id="120"><note><![CDATA[Educate employees on the prevention of harassment and discrimination and productive ways to resolve conflict]]></note></topic><topic position="2228,190" order="2" text="Strategic Priority 4c: Diversity" id="121"><note><![CDATA[Insure we promote our commitment to diversity and non-discrimination through our actions and in our outreach and employee recruitment efforts]]></note></topic><topic position="2178,214" order="3" id="253"/><topic position="2191,238" order="4" text="So That..." id="118"><icon id="object_rainbow"/><note><![CDATA[(So that... we can reflect the diverse populations we serve AND ensure everyone feels safe, respected and included, So that... we better serve our diverse client organizations AND we are a great place to work )]]></note></topic></topic><topic position="1326,-642" text="Strategy 1: Recruit &amp; Retain" id="29"><note><![CDATA[Recruit and retain top talent commensurate with identified organizational capacity requirements ]]></note><topic position="1444,-781" order="0" text="So that..." id="28"><note><![CDATA[(So that... we find and keep good people, So that... they are highly competent and can work well in agile teams... So that we can so the best work possible, for the least cost, in the shortest time for other NFPs, So that... NFPs can help those who need it.)]]></note></topic><topic position="1539,-742" order="1" text="Strategic Priority 1a: Recruitment" id="37"><note><![CDATA[1. Identify and use proactive and effective recruitment strategies, ]]></note><topic position="1573,-752" order="0" text="Modify App Form" shrink="true" id="238"><note><![CDATA[Recently, I saw a few job posts sent through different community
<map name="complex" version="tango"><topic central="true" text="PPM Plan" id="1" bgColor="#32e36a"><topic position="241,250" order="0" text="Business Development " id="4" fontStyle=";;;bold;;"/><topic position="226,-100" order="2" text="Backlog Management" shape="line" id="18" fontStyle=";;;bold;;"><link url="https://docs.google.com/a/freeform.ca/drawings/d/1mrtkVAN3_XefJJCgfxw4Va6xk9TVDBKXDt_uzyIF4Us/edit" urlType="url"/></topic><topic position="-193,50" order="1" text="Freeform IT" id="10" fontStyle=";;;bold;;"/><topic position="-271,-50" order="3" text="Client Project Management" id="204" fontStyle=";;;bold;;"/><topic position="-183,-150" order="5" text="Governance &amp; Executive" id="206" fontStyle=";;;bold;;"/><topic position="124,-200" order="4" text="Finance" id="5" fontStyle=";;;bold;;"/><topic position="176,-150" order="6" text="Administration" id="3" fontStyle=";;;bold;;"/><topic position="222,100" order="8" text="Human Resources" id="154" fontStyle=";;;bold;;"><note><![CDATA[HR Vision: Freeform Solutions is successful at its mission, sustainable as an organization AND is a great place to work.
HR Mission: To provide a positive HR service experience for applicants and employees, and collaborate with departments to recruit, develop, support, and retain diverse and talented employees who are the key to Freeforms reputation and success.]]></note></topic><topic position="-202,150" order="7" text="Freeform Hosting" id="16" fontStyle=";;;bold;;"/><topic position="197,50" order="10" text="Community Outreach" id="247" fontStyle=";;;bold;;"/><topic position="124,300" order="12" text="R&amp;D" id="261" fontStyle=";;;bold;;"><topic position="230,289" order="0" text="Goals" id="263"/><topic position="239,313" order="1" text="Formulize" id="264"/></topic><topic position="-158,0" order="9" text="Probono" id="268"><topic position="-273,1" order="0" id="269"/></topic></topic><topic position="1558,-249" text="Strategy 2: Talent Development" id="31"><note><![CDATA[Strategy #2: Support the talent development of our employees through professional development and learning and through improved performance management.]]></note><topic position="1817,-260" order="0" text="Strategic Priority 2a: Personal Plans" id="113"><note><![CDATA[Each employee will have a personal Professional Development Plan. ]]></note></topic><topic position="1869,-236" order="1" text="Strategic Priority 2b: External learning matches organ. goals" id="114"><note><![CDATA[Each department of Freeform will identify areas that need development to meet overall FS goals. Eg. Project Manager may identify needed improvement in a development tool. Or... Bus. Dev. may identify a new need in NFP that FS could fill within mandate, if training were provided. Professional Dev. priority will be given to proposals for development with clear ROIs.]]></note></topic><topic position="1831,-212" order="2" text="Strategic Priority 2c: Learning Environment" id="116"><note><![CDATA[Learning and innovation are an essential part of providing the best solutions to NFPs. Cost effective internal learning and time to explore innovation will be encouraged, provided they conform with organization goal and clear ROI is demonstrated.]]></note></topic><topic position="1766,-188" order="3" text="So That..." id="112"><icon id="object_rainbow"/><note><![CDATA[(So that... our employees have improved skills and knowledge, So that... they are highly competent and can work well in agile teams and feel fulfilled and self actualized... So that we can so the best work possible, for the least cost, in the shortest time for other NFPs, So that... NFPs can help those who need it.)]]></note></topic></topic><topic position="1952,168" text="Strategy 4: Inclusive, Positive Environment" id="105"><note><![CDATA[Strategy #4: Foster a diverse, inclusive community with a positive work environment.]]></note><topic position="2229,142" order="0" text="Strategic Priority 4a:Feedback" id="119"><note><![CDATA[Conduct regular organizational feedback assessments and collaborate to improve the work climate]]></note></topic><topic position="2246,166" order="1" text="Strategic Priority 4b: Anti Harassment" id="120"><note><![CDATA[Educate employees on the prevention of harassment and discrimination and productive ways to resolve conflict]]></note></topic><topic position="2228,190" order="2" text="Strategic Priority 4c: Diversity" id="121"><note><![CDATA[Insure we promote our commitment to diversity and non-discrimination through our actions and in our outreach and employee recruitment efforts]]></note></topic><topic position="2178,214" order="3" id="253"/><topic position="2191,238" order="4" text="So That..." id="118"><icon id="object_rainbow"/><note><![CDATA[(So that... we can reflect the diverse populations we serve AND ensure everyone feels safe, respected and included, So that... we better serve our diverse client organizations AND we are a great place to work )]]></note></topic></topic><topic position="1326,-642" text="Strategy 1: Recruit &amp; Retain" id="29"><note><![CDATA[Recruit and retain top talent commensurate with identified organizational capacity requirements ]]></note><topic position="1444,-781" order="0" text="So that..." id="28"><note><![CDATA[(So that... we find and keep good people, So that... they are highly competent and can work well in agile teams... So that we can so the best work possible, for the least cost, in the shortest time for other NFPs, So that... NFPs can help those who need it.)]]></note></topic><topic position="1539,-742" order="1" text="Strategic Priority 1a: Recruitment" id="37"><note><![CDATA[1. Identify and use proactive and effective recruitment strategies, ]]></note><topic position="1573,-752" order="0" text="Modify App Form" shrink="true" id="238"><note><![CDATA[Recently, I saw a few job posts sent through different community
groups and they seem to be taking our idea of screening candidates
to a next level. Not only they ask candidates to provide resume and
cover letter + some project related information but also request

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-277.95 -272.425 1224.00000 765.00000" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-100 -1117 1112 2240" style="background-color:white">
<path style="fill:none " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M463.00,660.00 C472.77,660 482.53,1017.00 492.30,1017.00"/>
<path style="fill:none " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M463.00,660.00 C472.93,660 482.87,1007.00 492.80,1007.00"/>
<path style="fill:none " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M463.00,660.00 C472.93,660 482.87,975.00 492.80,975.00"/>

Before

Width:  |  Height:  |  Size: 90 KiB

After

Width:  |  Height:  |  Size: 90 KiB

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="294.95 -265.625 1231.34400 769.59000" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-1708.5 -556 6663 1119" style="background-color:white">
<path style="fill:none " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M-764.00,19.00 C-773.93,19 -783.87,251.50 -793.80,251.50"/>
<path style="fill:none " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M-764.00,19.00 C-773.93,19 -783.87,208.00 -793.80,208.00"/>
<path style="fill:none " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M-764.00,19.00 C-773.93,19 -783.87,140.00 -793.80,140.00"/>

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

View File

@ -1,4 +1,4 @@
<map name="enc" version="tango"><topic central="true" text="Artigos GF comentários interessantes" id="1"><topic position="-466,16" order="3" text="Baraloto et al. 2010. Functional trait variation and sampling strategies in species-rich plant communities" shape="rectagle" id="5" bgColor="#cccccc" brColor="#cccccc"><topic position="-1042,-163" order="0" id="6"><text><![CDATA[Therecent growth of large functional trait data
<map name="enc" version="tango"><topic central="true" text="Artigos GF comentários interessantes" id="1"><topic position="-466,16" order="0" text="Baraloto et al. 2010. Functional trait variation and sampling strategies in species-rich plant communities" shape="rectagle" id="5" bgColor="#cccccc" brColor="#cccccc"><topic position="-1042,-163" order="0" id="6"><text><![CDATA[Therecent growth of large functional trait data
bases has been fuelled by standardized protocols forthe
measurement of individual functional traits and intensive
efforts to compile trait data(Cornelissen etal. 2003; Chave etal. 2009). Nonetheless, there remains no consensusfor
@ -28,18 +28,18 @@ failed to accurately estimate the variance of trait values. This
indicates that in situations where accurate estimation of plotlevel
variance is desired, complete censuses are essential.]]></text><note><![CDATA[Isso significa que estudos de característica de história de vida compensam? Ver nos m&m.]]></note></topic><topic position="-915,219" order="7" id="15"><text><![CDATA[We suggest that, in these studies,
the investment in complete sampling may be worthwhile
for at least some traits.]]></text><note><![CDATA[Falar que isso corrobora nossa sugestão de utilizar poucas medidas, mas que elas sejam confiáveis.]]></note></topic></topic><topic position="297,0" order="0" text="Chazdon 2010. Biotropica. 42(1): 3140" shape="rectagle" id="17" fontStyle=";;#000000;;;" bgColor="#cccccc" brColor="#cccccc"><topic position="586,-383" order="1" id="22"><text><![CDATA[Here, we develop a new approach that links functional attributes
for at least some traits.]]></text><note><![CDATA[Falar que isso corrobora nossa sugestão de utilizar poucas medidas, mas que elas sejam confiáveis.]]></note></topic></topic><topic position="297,0" order="1" text="Chazdon 2010. Biotropica. 42(1): 3140" shape="rectagle" id="17" fontStyle=";;#000000;;;" bgColor="#cccccc" brColor="#cccccc"><topic position="586,-383" order="0" id="22"><text><![CDATA[Here, we develop a new approach that links functional attributes
of tree species with studies of forest recovery and regional
land-use transitions (Chazdon et al. 2007). Grouping species according
to their functional attributes or demographic rates provides
insight into both applied and theoretical questions, such as selecting
species for reforestation programs, assessing ecosystem services, and
understanding community assembly processes in tropical forests
(Diaz et al. 2007, Kraft et al. 2008).]]></text></topic><topic position="583,-313" order="2" id="23"><text><![CDATA[Since we have data on leaf
(Diaz et al. 2007, Kraft et al. 2008).]]></text></topic><topic position="583,-313" order="1" id="23"><text><![CDATA[Since we have data on leaf
and wood functional traits for only a subset of the species in our
study sites, we based our functional type classification on information
for a large number of tree species obtained through vegetation
monitoring studies.]]></text></topic><topic position="2883,-437" order="0" text="Falar no artigo que esse trabalho fala que é inadequada a divisão entre pioneira e não pioneira devido a grande variação que há entre elas. Além de terem descoberto que durante a ontogenia a resposta a luminosidade muda dentro de uma mesma espécie. Porém recomendar que essa classificação continue sendo usada em curto prazo enquanto não há informações confiáveis suficiente para esta simples classificação. Outras classificações como esta do artigo são bem vinda, contanto que tenham dados confiáveis. Porém dados estáticos já são difíceis de se obter, dados temporais, como taxa de crescimento em diâmetro ou altura, são mais difíceis ainda. Falar que vários tipos de classificações podem ser utilizadas e quanto mais detalhe melhor, porém os dados é que são mais limitantes. Se focarmos em dados de germinação e crescimento limitantes, como sugerem sainete e whitmore, da uma idéia maismrápida e a curto prazo da classificação destas espécies. Depois com o tempo conseguiremos construir classificações mais detalhadas e com mais dados confiáveis. " id="24"/><topic position="720,-239" order="3" id="25"><text><![CDATA[Our approach avoided preconceived notions of successional
monitoring studies.]]></text></topic><topic position="2883,-437" order="2" text="Falar no artigo que esse trabalho fala que é inadequada a divisão entre pioneira e não pioneira devido a grande variação que há entre elas. Além de terem descoberto que durante a ontogenia a resposta a luminosidade muda dentro de uma mesma espécie. Porém recomendar que essa classificação continue sendo usada em curto prazo enquanto não há informações confiáveis suficiente para esta simples classificação. Outras classificações como esta do artigo são bem vinda, contanto que tenham dados confiáveis. Porém dados estáticos já são difíceis de se obter, dados temporais, como taxa de crescimento em diâmetro ou altura, são mais difíceis ainda. Falar que vários tipos de classificações podem ser utilizadas e quanto mais detalhe melhor, porém os dados é que são mais limitantes. Se focarmos em dados de germinação e crescimento limitantes, como sugerem sainete e whitmore, da uma idéia maismrápida e a curto prazo da classificação destas espécies. Depois com o tempo conseguiremos construir classificações mais detalhadas e com mais dados confiáveis. " id="24"/><topic position="720,-239" order="3" id="25"><text><![CDATA[Our approach avoided preconceived notions of successional
behavior or shade tolerance of tree species by developing an objective
and independent classification of functional types based on vegetation
monitoring data from permanent sample plots in mature and
@ -109,4 +109,4 @@ ZHANG, Z. D., R. G. ZANG, AND Y. D. QI. 2008. Spatiotemporal patterns and
dynamics of species richness and abundance of woody plant functional
groups in a tropical forest landscape of Hainan Island, South China.
J. Integr. Plant Biol. 50: 547558.
]]></text></topic></topic><topic position="-313,-224" order="1" text="Poorter 1999. Functional Ecology. 13:396-410" shape="rectagle" id="2" fontStyle=";;#000000;;;" bgColor="#cccccc" brColor="#cccccc"><topic position="-619,-221" order="0" text="Espécies pioneiras crescem mais rápido do que as não pioneiras" id="3"><topic position="-980,-221" order="0" text="Tolerância a sombra está relacionada com persistência e não com crescimento" id="4"/></topic></topic></topic></map>
]]></text></topic></topic><topic position="-313,-224" order="2" text="Poorter 1999. Functional Ecology. 13:396-410" shape="rectagle" id="2" fontStyle=";;#000000;;;" bgColor="#cccccc" brColor="#cccccc"><topic position="-619,-221" order="0" text="Espécies pioneiras crescem mais rápido do que as não pioneiras" id="3"><topic position="-980,-221" order="0" text="Tolerância a sombra está relacionada com persistência e não com crescimento" id="4"/></topic></topic></topic></map>

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-277.95 -272.425 1224.00000 765.00000" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-128.5 -152 434 310" style="background-color:white">
<path style="fill:#495879 " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M0.00,0.00 C19.77,0 39.53,52.00 59.30,52.00 39.53,55.00 19.77,5.00 0.00,7.00 Z"/>
<path style="fill:#495879 " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M0.00,0.00 C19.77,0 39.53,-24.00 59.30,-24.00 39.53,-21.00 19.77,5.00 0.00,7.00 Z"/>
<path style="fill:#495879 " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M0.00,0.00 C19.60,0 39.20,14.00 58.80,14.00 39.20,17.00 19.60,5.00 0.00,7.00 Z"/>

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@ -1 +1 @@
<map name="i18n" version="tango"><topic central="true" text="i18n" shape="rounded rectagle" id="0"><topic position="200,0" order="0" text="Este es un é con acento" shape="line" id="1"/><topic position="-200,0" order="0" text="Este es una ñ" shape="line" id="2"/><topic position="200,100" order="4" text="這是一個樣本 Japanise。" shape="line" id="3"/></topic></map>
<map name="i18n" version="tango"><topic central="true" text="i18n" shape="rounded rectagle" id="0"><topic position="200,0" order="0" text="Este es un é con acento" shape="line" id="1"/><topic position="-200,0" order="1" text="Este es una ñ" shape="line" id="2"/><topic position="200,100" order="2" text="這是一個樣本 Japanise。" shape="line" id="3"/></topic></map>

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-277.95 -272.425 1224.00000 765.00000" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-150 -141 438 288" style="background-color:white">
<path style="fill:#495879 " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M0.00,0.00 C26.77,0 53.53,-5.00 80.30,-5.00 53.53,-2.00 26.77,5.00 0.00,7.00 Z"/>
<path style="fill:#495879 " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M0.00,0.00 C26.93,0 53.87,41.00 80.80,41.00 53.87,44.00 26.93,5.00 0.00,7.00 Z"/>
<g preserveAspectRatio="none" focusable="true" width="100" height="100" transform="translate(-50.00000,-23.00000) scale(1.00000,1.00000)" visibility="visible">

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@ -1,2 +1,2 @@
<map name="i18n2" version="tango"><topic central="true" text="أَبْجَدِيَّة عَرَبِيَّة" shape="rounded rectagle" id="0"><topic position="200,0" order="0" text="أَبْجَدِيَّة عَرَبِ" shape="line" id="1"><note><![CDATA[This is a not in languange أَبْجَدِيَّة عَرَبِ]]></note></topic><topic position="-200,0" order="0" shape="line" id="2"><text><![CDATA[Long text node:
<map name="i18n2" version="tango"><topic central="true" text="أَبْجَدِيَّة عَرَبِيَّة" shape="rounded rectagle" id="0"><topic position="200,0" order="0" text="أَبْجَدِيَّة عَرَبِ" shape="line" id="1"><note><![CDATA[This is a not in languange أَبْجَدِيَّة عَرَبِ]]></note></topic><topic position="-200,0" order="1" shape="line" id="2"><text><![CDATA[Long text node:
أَبْجَدِيَّة عَرَب]]></text></topic></topic></map>

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-277.95 -272.425 1224.00000 765.00000" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-1037.5 -338 1835 720" style="background-color:white">
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>
<path stroke-width="2px" stroke="#9b74e6" stroke-opacity="1" visibility="visible" d="M83.54929577464789,-187 L88.28751685656984,-183.31906791982922 M83.54929577464789,-187 L79.86836369447711,-182.26177891807805"/>
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -8,7 +8,7 @@ BD, Disco duro, Memoria flash.]]></text></topic></topic></topic><topic position=
]]></text><topic position="-664,-145" order="0" shape="rectagle" id="92" fontStyle=";8;#000000;normal;;" bgColor="#f1c232" brColor="#7f6000"><text><![CDATA[Software de Sistema:Permite el entendimiento
entre el usuario y la maquina.]]></text><topic position="-883,-174" order="0" text="Microsoft Windows" shape="rectagle" id="101" fontStyle=";8;#000000;;;" bgColor="#ffd966" brColor="#7f6000"/><topic position="-864,-145" order="1" text="GNU/LINUX" shape="rectagle" id="106" fontStyle=";8;#000000;;;" bgColor="#ffd966" brColor="#7f6000"/><topic position="-846,-116" order="2" text="MAC " shape="rectagle" id="107" fontStyle=";8;#000000;;;" bgColor="#ffd966" brColor="#7f6000"/></topic><topic position="-667,-43" order="1" shape="rectagle" id="93" fontStyle=";8;#000000;;;" bgColor="#f1c232" brColor="#7f6000"><text><![CDATA[Software de Aplicación: Permite hacer hojas de
calculo navegar en internet, base de datos, etc.]]></text><topic position="-855,-87" order="0" text="Office" shape="rectagle" id="108" fontStyle=";8;#000000;;;" bgColor="#ffd966" brColor="#783f04"/><topic position="-869,-58" order="1" text="Libre Office" shape="rectagle" id="109" fontStyle=";8;#000000;;;" bgColor="#ffd966" brColor="#7f6000"/><topic position="-873,-29" order="2" text="Navegadores" shape="rectagle" id="110" fontStyle=";8;#000000;;;" bgColor="#ffd966" brColor="#7f6000"/><topic position="-851,0" order="3" text="Msn" shape="rectagle" id="111" fontStyle=";8;#000000;;;" bgColor="#ffd966" brColor="#783f04"/></topic><topic position="-590,29" order="2" shape="rectagle" id="94" fontStyle=";8;#000000;;;" bgColor="#f1c232" brColor="#7f6000"><text><![CDATA[Software de Desarrollo
]]></text></topic></topic><topic position="-218,116" order="3" text="Tipos de computadora" shape="elipse" id="3" fontStyle=";10;;bold;;"><topic position="-476,58" order="0" text="Computadora personal de escritorio o Desktop" shape="elipse" id="8" fontStyle=";8;;bold;;"/><topic position="-352,87" order="1" shape="elipse" id="10" fontStyle=";8;;bold;;"><text><![CDATA[PDA
]]></text></topic></topic><topic position="-218,116" order="2" text="Tipos de computadora" shape="elipse" id="3" fontStyle=";10;;bold;;"><topic position="-476,58" order="0" text="Computadora personal de escritorio o Desktop" shape="elipse" id="8" fontStyle=";8;;bold;;"/><topic position="-352,87" order="1" shape="elipse" id="10" fontStyle=";8;;bold;;"><text><![CDATA[PDA
]]></text></topic><topic position="-360,116" order="2" text="Laptop" shape="elipse" id="11" fontStyle=";8;;bold;;"/><topic position="-365,145" order="3" text="Servidor" shape="elipse" id="12" fontStyle=";8;;bold;;"/><topic position="-368,174" order="4" text="Tablet PC" shape="elipse" id="13" fontStyle=";8;;bold;;"/></topic></topic><topic position="283,192" text="CPU y sus partes internas" shape="rounded rectagle" id="35" fontStyle=";10;#feffff;;;" bgColor="#c27ba0" brColor="#4c1130"><topic position="493,120" order="0" text="Ranuras de expansión o PCI" shape="rounded rectagle" id="36" fontStyle=";8;#000000;;;" bgColor="#ead1dc" brColor="#4c1130"/><topic position="458,149" order="1" shape="rounded rectagle" id="38" fontStyle=";8;#000000;;;" bgColor="#ead1dc" brColor="#4c1130"><text><![CDATA[Memoria RAM
]]></text></topic><topic position="466,178" order="2" shape="rounded rectagle" id="40" fontStyle=";8;#000000;;;" bgColor="#ead1dc" brColor="#4c1130"><text><![CDATA[Unidades ópticas
]]></text></topic><topic position="457,207" order="3" shape="rounded rectagle" id="41" fontStyle=";8;#000000;;;" bgColor="#ead1dc" brColor="#4c1130"><text><![CDATA[Tarjeta Madre

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-264.99255421004466 -310.83776307154034 1554.89349 971.80843" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-623 -402 1387.5 747" style="background-color:white">
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>
<path stroke-width="2px" stroke="#9b74e6" stroke-opacity="1" visibility="visible" d="M326,104 L320.00018895554825,103.95238245202816 M326,104 L326.0476175479718,98.00018895554825"/>
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>

Before

Width:  |  Height:  |  Size: 54 KiB

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-100.29999999999998 -120.275 1224.00000 765.00000" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-898.5 -565 1828.5 1136" style="background-color:white">
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>
<path stroke-width="2px" stroke="#9b74e6" stroke-opacity="1" visibility="visible" d="M-296,-173 L-292.3650603359595,-168.2264045375854 M-296,-173 L-300.7735954624146,-169.36506033595953"/>
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>

Before

Width:  |  Height:  |  Size: 86 KiB

After

Width:  |  Height:  |  Size: 86 KiB

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="true" preserveAspectRatio="none" width="1440" height="900" viewBox="-277.95 -272.425 1224.00000 765.00000" style="background-color:white">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" focusable="false" preserveAspectRatio="xMidYMid" width="1440" height="900" viewBox="-529 -289 1024 585" style="background-color:white">
<path style="fill:none " stroke-width="2px" stroke="#3f96ff" stroke-opacity="1" visibility="hidden"/>
<path stroke-width="2px" stroke="#9b74e6" stroke-opacity="1" visibility="visible" d="M210.85714285714286,-166.5 L204.94844150423523,-165.45728799654572 M210.85714285714286,-166.5 L209.81443085368858,-172.40870135290763"/>
<path style="fill:none " stroke-width="1px" stroke="#495879" stroke-opacity="1" fill="#495879" fill-opacity="1" visibility="visible" d="M-254.00,161.00 C-263.77,161 -273.53,190.00 -283.30,190.00"/>

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 83 KiB

View File

@ -1,3 +1,3 @@
<map name="welcome" version="tango"><topic central="true" text="Welcome To WiseMapping" id="1" fontStyle=";;#ffffff;;;"><icon id="sign_info"/><topic position="199,-112" order="0" id="30"><text><![CDATA[5 min tutorial video ?
Follow the link !]]></text><link url="https://www.youtube.com/tv?vq=medium#/watch?v=rKxZwNKs9cE" urlType="url"/><icon id="hard_computer"/></topic><topic position="-167,-112" order="1" text="Try it Now!" id="11" fontStyle=";;#525c61;;;" bgColor="#250be3" brColor="#080559"><icon id="face_surprise"/><topic position="-260,-141" order="0" text="Double Click" id="12" fontStyle=";;#525c61;;italic;"/><topic position="-278,-112" order="1" id="13"><text><![CDATA[Press "enter" to add a
Sibling]]></text></topic><topic position="-271,-83" order="2" text="Drag map to move" id="14" fontStyle=";;#525c61;;italic;"/></topic><topic position="155,-18" order="2" text="Features" id="15" fontStyle=";;#525c61;;;"><topic position="244,-80" order="0" text="Links to Sites" id="16" fontStyle=";6;#525c61;;;"><link url="http://www.digg.com" urlType="url"/></topic><topic position="224,-30" order="1" text="Styles" id="31"><topic position="285,-55" order="0" text="Fonts" id="17" fontStyle=";;#525c61;;;"/><topic position="299,-30" order="1" text="Topic Shapes" shape="line" id="19" fontStyle=";;#525c61;;;"/><topic position="295,-5" order="2" text="Topic Color" id="18" fontStyle=";;#525c61;;;"/></topic><topic position="229,20" order="2" text="Icons" id="20" fontStyle=";;#525c61;;;"><icon id="object_rainbow"/></topic><topic position="249,45" order="3" text="History Changes" id="21" fontStyle=";;#525c61;;;"><icon id="arrowc_turn_left"/></topic></topic><topic position="-176,-21" order="3" text="Mind Mapping" id="6" fontStyle=";;#525c61;;;" bgColor="#edabff"><icon id="thumb_thumb_up"/><topic position="-293,-58" order="0" text="Share with Collegues" id="7" fontStyle=";;#525c61;;;"/><topic position="-266,-33" order="1" text="Online" id="8" fontStyle=";;#525c61;;;"/><topic position="-288,-8" order="2" text="Anyplace, Anytime" id="9" fontStyle=";;#525c61;;;"/><topic position="-266,17" order="3" text="Free!!!" id="10" fontStyle=";;#525c61;;;"/></topic><topic position="171,95" order="4" text="Productivity" id="2" fontStyle=";;#525c61;;;" bgColor="#d9b518"><icon id="chart_bar"/><topic position="281,70" order="0" text="Share your ideas" id="3" fontStyle=";;#525c61;;;"><icon id="bulb_light_on"/></topic><topic position="270,95" order="1" text="Brainstorming" id="4" fontStyle=";;#525c61;;;"/><topic position="256,120" order="2" text="Visual " id="5" fontStyle=";;#525c61;;;"/></topic><topic position="-191,54" order="5" text="Install In Your Server" id="27" fontStyle=";;#525c61;;;"><icon id="hard_computer"/><topic position="-319,42" order="0" text="Open Source" id="29" fontStyle=";;#525c61;;;"><icon id="soft_penguin"/><link url="http://www.wisemapping.org/" urlType="url"/></topic><topic position="-310,67" order="1" text="Download" id="28" fontStyle=";;#525c61;;;"><link url="http://www.wisemapping.com/inyourserver.html" urlType="url"/></topic></topic><topic position="-169,117" order="7" text="Collaborate" id="32"><icon id="people_group"/><topic position="-253,92" order="0" text="Embed" id="33"/><topic position="-254,117" order="1" text="Publish" id="34"/><topic position="-277,142" order="2" text="Share for Edition" id="35"><icon id="mail_envelop"/></topic></topic></topic><relationship srcTopicId="30" destTopicId="11" lineType="3" srcCtrlPoint="-80,-56" destCtrlPoint="110,-116" endArrow="false" startArrow="true"/></map>
Sibling]]></text></topic><topic position="-271,-83" order="2" text="Drag map to move" id="14" fontStyle=";;#525c61;;italic;"/></topic><topic position="155,-18" order="2" text="Features" id="15" fontStyle=";;#525c61;;;"><topic position="244,-80" order="0" text="Links to Sites" id="16" fontStyle=";6;#525c61;;;"><link url="http://www.digg.com" urlType="url"/></topic><topic position="224,-30" order="1" text="Styles" id="31"><topic position="285,-55" order="0" text="Fonts" id="17" fontStyle=";;#525c61;;;"/><topic position="299,-30" order="1" text="Topic Shapes" shape="line" id="19" fontStyle=";;#525c61;;;"/><topic position="295,-5" order="2" text="Topic Color" id="18" fontStyle=";;#525c61;;;"/></topic><topic position="229,20" order="2" text="Icons" id="20" fontStyle=";;#525c61;;;"><icon id="object_rainbow"/></topic><topic position="249,45" order="3" text="History Changes" id="21" fontStyle=";;#525c61;;;"><icon id="arrowc_turn_left"/></topic></topic><topic position="-176,-21" order="3" text="Mind Mapping" id="6" fontStyle=";;#525c61;;;" bgColor="#edabff"><icon id="thumb_thumb_up"/><topic position="-293,-58" order="0" text="Share with Collegues" id="7" fontStyle=";;#525c61;;;"/><topic position="-266,-33" order="1" text="Online" id="8" fontStyle=";;#525c61;;;"/><topic position="-288,-8" order="2" text="Anyplace, Anytime" id="9" fontStyle=";;#525c61;;;"/><topic position="-266,17" order="3" text="Free!!!" id="10" fontStyle=";;#525c61;;;"/></topic><topic position="171,95" order="4" text="Productivity" id="2" fontStyle=";;#525c61;;;" bgColor="#d9b518"><icon id="chart_bar"/><topic position="281,70" order="0" text="Share your ideas" id="3" fontStyle=";;#525c61;;;"><icon id="bulb_light_on"/></topic><topic position="270,95" order="1" text="Brainstorming" id="4" fontStyle=";;#525c61;;;"/><topic position="256,120" order="2" text="Visual " id="5" fontStyle=";;#525c61;;;"/></topic><topic position="-191,54" order="5" text="Install In Your Server" id="27" fontStyle=";;#525c61;;;"><icon id="hard_computer"/><topic position="-319,42" order="0" text="Open Source" id="29" fontStyle=";;#525c61;;;"><icon id="soft_penguin"/><link url="http://www.wisemapping.org/" urlType="url"/></topic><topic position="-310,67" order="1" text="Download" id="28" fontStyle=";;#525c61;;;"><link url="http://www.wisemapping.com/inyourserver.html" urlType="url"/></topic></topic><topic position="-169,117" order="6" text="Collaborate" id="32"><icon id="people_group"/><topic position="-253,92" order="0" text="Embed" id="33"/><topic position="-254,117" order="1" text="Publish" id="34"/><topic position="-277,142" order="2" text="Share for Edition" id="35"><icon id="mail_envelop"/></topic></topic></topic><relationship srcTopicId="30" destTopicId="11" lineType="3" srcCtrlPoint="-80,-56" destCtrlPoint="110,-116" endArrow="false" startArrow="true"/></map>

View File

@ -1,6 +1,6 @@
{
"name": "@wisemapping/webapp",
"version": "5.0.3",
"version": "5.0.4",
"main": "app.jsx",
"scripts": {
"start": "webpack serve --config webpack.dev.js ",

153
yarn.lock
View File

@ -1089,6 +1089,43 @@
dependencies:
"@date-io/core" "^2.13.1"
"@bcoe/v8-coverage@^0.2.3":
version "0.2.3"
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
"@cypress/request@^2.88.10", "@cypress/request@^2.88.6":
version "2.88.10"
resolved "https://registry.yarnpkg.com/@cypress/request/-/request-2.88.10.tgz#b66d76b07f860d3a4b8d7a0604d020c662752cce"
integrity sha512-Zp7F+R93N0yZyG34GutyTNr+okam7s/Fzc1+i3kcqOP8vk6OuajuE9qZJ6Rs+10/1JFtXFYMdyarnU1rZuJesg==
dependencies:
aws-sign2 "~0.7.0"
aws4 "^1.8.0"
caseless "~0.12.0"
combined-stream "~1.0.6"
extend "~3.0.2"
forever-agent "~0.6.1"
form-data "~2.3.2"
http-signature "~1.3.6"
is-typedarray "~1.0.0"
isstream "~0.1.2"
json-stringify-safe "~5.0.1"
mime-types "~2.1.19"
performance-now "^2.1.0"
qs "~6.5.2"
safe-buffer "^5.1.2"
tough-cookie "~2.5.0"
tunnel-agent "^0.6.0"
uuid "^8.3.2"
"@cypress/xvfb@^1.2.4":
version "1.2.4"
resolved "https://registry.yarnpkg.com/@cypress/xvfb/-/xvfb-1.2.4.tgz#2daf42e8275b39f4aa53c14214e557bd14e7748a"
integrity sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==
dependencies:
debug "^3.1.0"
lodash.once "^4.1.1"
"@discoveryjs/json-ext@^0.5.0":
version "0.5.6"
resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz#d5e0706cf8c6acd8c6032f8d54070af261bbbb2f"
@ -5278,6 +5315,13 @@ cookie@0.4.1:
resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1"
integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==
copy-anything@^2.0.1:
version "2.0.3"
resolved "https://registry.yarnpkg.com/copy-anything/-/copy-anything-2.0.3.tgz#842407ba02466b0df844819bbe3baebbe5d45d87"
integrity sha512-GK6QUtisv4fNS+XcI7shX0Gx9ORg7QqIznyfho79JTnX1XhLiyZHfftvGiziqzRiEi/Bjhgpi+D2o7HxJFPnDQ==
dependencies:
is-what "^3.12.0"
copy-concurrently@^1.0.0:
version "1.0.5"
resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0"
@ -6201,7 +6245,7 @@ err-code@^1.0.0:
resolved "https://registry.yarnpkg.com/err-code/-/err-code-1.1.2.tgz#06e0116d3028f6aef4806849eb0ea6a748ae6960"
integrity sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=
errno@^0.1.3:
errno@^0.1.1, errno@^0.1.3:
version "0.1.8"
resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f"
integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==
@ -6564,7 +6608,7 @@ eslint@^7.14.0:
ajv "^6.10.0"
chalk "^4.0.0"
cross-spawn "^7.0.2"
debug "^4.0.1"
debug "^4.3.2"
doctrine "^3.0.0"
enquirer "^2.3.5"
escape-string-regexp "^4.0.0"
@ -6583,7 +6627,7 @@ eslint@^7.14.0:
import-fresh "^3.0.0"
imurmurhash "^0.1.4"
is-glob "^4.0.0"
js-yaml "^3.13.1"
js-yaml "^4.1.0"
json-stable-stringify-without-jsonify "^1.0.1"
levn "^0.4.1"
lodash.merge "^4.6.2"
@ -6591,9 +6635,9 @@ eslint@^7.14.0:
natural-compare "^1.4.0"
optionator "^0.9.1"
progress "^2.0.0"
regexpp "^3.1.0"
regexpp "^3.2.0"
semver "^7.2.1"
strip-ansi "^6.0.0"
strip-ansi "^6.0.1"
strip-json-comments "^3.1.0"
table "^6.0.9"
text-table "^0.2.0"
@ -6794,6 +6838,49 @@ execa@^0.7.0:
signal-exit "^3.0.0"
strip-eof "^1.0.0"
execa@4.1.0, execa@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a"
integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==
dependencies:
cross-spawn "^7.0.0"
get-stream "^5.0.0"
human-signals "^1.1.1"
is-stream "^2.0.0"
merge-stream "^2.0.0"
npm-run-path "^4.0.0"
onetime "^5.1.0"
signal-exit "^3.0.2"
strip-final-newline "^2.0.0"
execa@5.1.1, execa@^5.0.0:
version "5.1.1"
resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd"
integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==
dependencies:
cross-spawn "^7.0.3"
get-stream "^6.0.0"
human-signals "^2.1.0"
is-stream "^2.0.0"
merge-stream "^2.0.0"
npm-run-path "^4.0.1"
onetime "^5.1.2"
signal-exit "^3.0.3"
strip-final-newline "^2.0.0"
execa@^0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777"
integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=
dependencies:
cross-spawn "^5.0.1"
get-stream "^3.0.0"
is-stream "^1.1.0"
npm-run-path "^2.0.0"
p-finally "^1.0.0"
signal-exit "^3.0.0"
strip-eof "^1.0.0"
execa@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8"
@ -7987,6 +8074,15 @@ http-proxy-agent@^4.0.1:
agent-base "6"
debug "4"
http-proxy-agent@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a"
integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==
dependencies:
"@tootallnate/once" "1"
agent-base "6"
debug "4"
http-proxy-middleware@0.19.1:
version "0.19.1"
resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a"
@ -8089,7 +8185,7 @@ hyphenate-style-name@^1.0.3:
resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz#691879af8e220aea5750e8827db4ef62a54e361d"
integrity sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==
iconv-lite@0.4.24, iconv-lite@^0.4.24:
iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4:
version "0.4.24"
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
@ -8615,6 +8711,18 @@ is-number-object@^1.0.4:
dependencies:
has-tostringtag "^1.0.0"
is-npm@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-5.0.0.tgz#43e8d65cc56e1b67f8d47262cf667099193f45a8"
integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==
is-number-object@^1.0.4:
version "1.0.6"
resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0"
integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==
dependencies:
has-tostringtag "^1.0.0"
is-number@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
@ -10246,7 +10354,7 @@ mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17,
dependencies:
mime-db "1.51.0"
mime@1.6.0:
mime@1.6.0, mime@^1.4.1:
version "1.6.0"
resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
@ -10539,6 +10647,15 @@ natural-compare@^1.4.0:
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
needle@^2.5.2:
version "2.9.1"
resolved "https://registry.yarnpkg.com/needle/-/needle-2.9.1.tgz#22d1dffbe3490c2b83e301f7709b6736cd8f2684"
integrity sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==
dependencies:
debug "^3.2.6"
iconv-lite "^0.4.4"
sax "^1.2.4"
negotiator@0.6.2:
version "0.6.2"
resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb"
@ -11256,6 +11373,11 @@ parse-json@^5.0.0:
json-parse-even-better-errors "^2.3.0"
lines-and-columns "^1.1.6"
parse-node-version@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/parse-node-version/-/parse-node-version-1.0.1.tgz#e2b5dbede00e7fa9bc363607f53327e8b073189b"
integrity sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==
parse-path@^4.0.0:
version "4.0.3"
resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.3.tgz#82d81ec3e071dcc4ab49aa9f2c9c0b8966bb22bf"
@ -11803,6 +11925,13 @@ qs@^6.9.4:
dependencies:
side-channel "^1.0.4"
qs@^6.9.4:
version "6.10.2"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.2.tgz#c1431bea37fc5b24c5bdbafa20f16bdf2a4b9ffe"
integrity sha512-mSIdjzqznWgfd4pMii7sHtaYF8rx8861hBO80SraY5GT0XQibWZWJSid0avzHGkDIZLImux2S5mXO0Hfct2QCw==
dependencies:
side-channel "^1.0.4"
qs@~6.5.2:
version "6.5.3"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad"
@ -11818,6 +11947,16 @@ query-string@^6.13.8:
split-on-first "^1.0.0"
strict-uri-encode "^2.0.0"
query-string@^6.13.8:
version "6.14.1"
resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a"
integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw==
dependencies:
decode-uri-component "^0.2.0"
filter-obj "^1.1.0"
split-on-first "^1.0.0"
strict-uri-encode "^2.0.0"
querystring@0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620"