Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wikiformat #164

Open
wants to merge 54 commits into
base: gh-pages
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
b0316a7
wikiformat in progress
mistermboy Jun 29, 2020
051565a
wikiFormat v0
mistermboy Jun 30, 2020
3ab6360
working on #153
mistermboy Jul 7, 2020
db7e801
solved #153
mistermboy Jul 7, 2020
ba3d3af
fixed comments after shapes
mistermboy Jul 7, 2020
667e15b
solved cypress dependency problem
mistermboy Jul 10, 2020
8d6cf2b
shor valueSets tags
mistermboy Jul 10, 2020
5ed79e5
fixed getSemicolonIfNeedeed
mistermboy Jul 10, 2020
da48928
solved #157
mistermboy Jul 10, 2020
c5ac307
fixed hasComments method
mistermboy Jul 13, 2020
cbaa21b
prettyprinter behaviour change with one line inlineshapes
mistermboy Jul 13, 2020
b502c05
wikiformat scroll oK
mistermboy Jul 13, 2020
6a4f49a
pretty comments (ugly code)
mistermboy Jul 13, 2020
e481848
prettifyComments
mistermboy Jul 13, 2020
26a2467
check yashe errors before wikiformat
mistermboy Jul 13, 2020
343088b
undo/redo history wikiformat
mistermboy Jul 13, 2020
26202e1
tooltipUtils refactor
mistermboy Jul 14, 2020
62e36de
getEntityData
mistermboy Jul 14, 2020
749dc19
fixed entityData.title exception
mistermboy Jul 14, 2020
99655e7
wikiFormat btn adjustment
mistermboy Jul 15, 2020
308af36
...
mistermboy Jul 22, 2020
a6099f6
removed unused method in node.js
mistermboy Jul 29, 2020
ab584a5
removed wikidata cache
mistermboy Jul 29, 2020
df1e7b0
removed logs
mistermboy Jul 29, 2020
9374353
fixed valueSet bug with <...>
mistermboy Jul 30, 2020
48cd53b
fixed simple tconstraint bug
mistermboy Jul 30, 2020
e33f0ef
[PRETTY] afterTriples
mistermboy Jul 30, 2020
c904eab
increased performance
mistermboy Jul 30, 2020
6401713
[Autocompleters] Ctrl-Space msg and autoshows
mistermboy Jul 31, 2020
f31ce55
[Autocompleters] Keywords and prefixes splited
mistermboy Jul 31, 2020
c328fa5
[Autocompleters] Wikibase adjustment
mistermboy Jul 31, 2020
e2f421a
wikiformat in progress msg
mistermboy Aug 3, 2020
373e826
wikistop btn
mistermboy Aug 3, 2020
bb94939
enable/disable editor while format
mistermboy Aug 3, 2020
407f5ff
new wikiformat logo
mistermboy Aug 3, 2020
02a95dc
Generate Wikidata COmments example
mistermboy Aug 3, 2020
56ea916
multicomments in the same line with just one #
mistermboy Aug 4, 2020
aee484e
prettyfyOnStop
mistermboy Aug 4, 2020
560b6a3
fixed wikiformat bug when non wikidata entities iris before constraints
mistermboy Aug 4, 2020
b2875d0
fixed #159
mistermboy Aug 4, 2020
b96d383
LOGICAL_OR const
mistermboy Aug 4, 2020
1de09d8
error check pretty
mistermboy Aug 4, 2020
bda7cae
alermsg when errors before wikiformat
mistermboy Aug 5, 2020
92ca5f9
solved prettyprint bug with | after non existing triples
mistermboy Aug 5, 2020
a1bb31b
rm blank comments
mistermboy Aug 6, 2020
3223cdd
fixed history problem
mistermboy Aug 6, 2020
4ae7dfe
title wikiBtn
mistermboy Aug 7, 2020
bf9ca97
solved #150
mistermboy Aug 10, 2020
27ebec4
solved #149
mistermboy Aug 10, 2020
53f3a13
solved #163
mistermboy Aug 10, 2020
293846b
solved small bug with ]
mistermboy Aug 10, 2020
7234982
wikiformat new replacement comments system
mistermboy Aug 11, 2020
2fbf431
Delete Example-77-Difference-between-Or-and-|
mistermboy Nov 11, 2020
e33899b
dependency update
mistermboy Nov 11, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
tooltipUtils refactor
  • Loading branch information
mistermboy committed Jul 14, 2020
commit 26202e1cf6a2b64a08e93c6181118c75b8a36846
142 changes: 85 additions & 57 deletions dist/yashe.bundled.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion src/autocompleters/wikibase.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ module.exports = function(yashe, name) {

getEntities(API_ENDPOINT,query)
.done((data)=>setHints(data,callback))
.fail(
.fail( //I had to do this for one wikibase instance I don't know why...
()=>getEntities(API_ENDPOINT.replace('/w/','/wiki/'),query)
.done((data)=>setHints(data,callback))
)
Expand Down
23 changes: 23 additions & 0 deletions src/config/defaults.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,29 @@ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>

start = @<human>

<human> EXTRA wdt:P31 {
wdt:P31 [wd:Q5];
wdt:P21 [wd:Q6581097 wd:Q6581072 wd:Q1097630 wd:Q1052281 wd:Q2449503 wd:Q48270]?;
wdt:P19 . ?;
wdt:P569 . ? ;
wdt:P735 . * ;
wdt:P734 . * ;
wdt:P106 . * ;
wdt:P27 @<country> *;
wdt:P22 @<human> *;
wdt:P25 @<human> *;
wdt:P3373 @<human> *;
wdt:P26 @<human> *;
wdt:P40 @<human> *;
wdt:P1038 @<human> *;
wdt:P103 @<language> *;
wdt:P1412 @<language> *;
wdt:P6886 @<language> *;
rdfs:label rdf:langString+;
}

<country> EXTRA wdt:P31 {
wdt:P31 [wd:Q6256 wd:Q3024240 wd:Q3624078] +;
}
Expand Down
2 changes: 1 addition & 1 deletion src/utils/pretty/prettyUtils.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ function prettify(yashe){
// It is true that without this check the user
// wouldn't appreciate the difference but yashe
// would be doing operations that would appear
// in the undo stack
// in the undo/redo stack
if(previousValue!=prettified){
yashe.setValue(prettified) ;
prettifyComments();
Expand Down
60 changes: 8 additions & 52 deletions src/utils/tooltipUtils.js
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,11 @@ var triggerTooltip = function(yashe, e) {
if(wikiElement!== undefined && wikiElement!== ''){
let endpoint = wikiUtils.getEndPoint(yashe,prefixName);
if(endpoint!=null){
checkEntity(wikiElement,endpoint)
wikiUtils.getEntity(wikiElement,endpoint)
.done((data)=>{loadTooltip(yashe,data,wikiElement,posX,posY)})
.fail(
()=>{
checkEntity(wikiElement,endpoint.replace('/w/','/wiki/'))
wikiUtils.getEntity(wikiElement,endpoint.replace('/w/','/wiki/'))
.done((data)=>{loadTooltip(yashe,data,wikiElement,posX,posY)})
});
}
Expand All @@ -71,42 +71,9 @@ var triggerTooltip = function(yashe, e) {
}

var loadTooltip = function(yashe,data,wikiElement,posX,posY){
if(!data.error){

var userLang;
var entity = '';
var description=''
var theme;
//Gets the preference languaje from the navigator
userLang = (navigator.language || navigator.userLanguage).split("-")[0]


var content = data.entities[wikiElement.toUpperCase()]

//Check if the property/entity exist
if(!content.labels)return;

//Some properties and entities are only avalible in English
//So if they do not exist we take it in English
if(content.labels[userLang] && content.descriptions[userLang]){

entity = content.labels[userLang].value +' ('+wikiElement+')'
description = content.descriptions[userLang].value

}else{

let lb = content.labels['en'];
let desc = content.descriptions['en'];
if(lb){
entity = lb.value +' ('+wikiElement+')';
}
if(desc){
description = desc.value
}

}

theme = yashe.getOption('theme');
var entityData = wikiUtils.getEntityData(wikiElement,data);
if(entityData.title!=''){
let theme = yashe.getOption('theme');
let cssStyle = themeStyles['default'];
if(theme=='dark'){
cssStyle = themeStyles['dark'];
Expand All @@ -124,23 +91,12 @@ var loadTooltip = function(yashe,data,wikiElement,posX,posY){
.append(
$('<div class="wikidata_tooltip">').css(cssStyle)
.append(
$('<div>').html(entity).css(styles.title))
$('<div>').html(entityData.title).css(styles.title))
.append(
$('<div>').html(description).css(styles.description)))
$('<div>').html(entityData.description).css(styles.description)))
.appendTo('body').fadeIn( 'slow' );
}
}

// U S A R M É T O D O P Á R A M S
var checkEntity = function (entity,endPoint){
return $.get(
{

url: endPoint+'api.php?action=wbgetentities&format=json&ids='+entity,
dataType: 'jsonp',

})


}


Expand Down
53 changes: 51 additions & 2 deletions src/utils/wikiUtils.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,11 @@ const NAMESPACE_SHORTCUTS = {
wdata: 'http://www.wikidata.org/wiki/Special:EntityData/'
}

const WIKIDATA_ENDPOINT= 'https://www.wikidata.org/w/'
const WIKIDATA_ENDPOINT= 'https://www.wikidata.org/w/';
const GET_ENTITY_QUERY = {
action:'wbgetentities',
format: 'json'
}



Expand Down Expand Up @@ -115,6 +119,49 @@ var isWikidataPrefix = function(yashe,token){
return false;
}

var getEntity = function(entity,endpoint){
GET_ENTITY_QUERY.ids = entity;
return $.get({
url: endpoint+'api.php?'+$.param(GET_ENTITY_QUERY),
dataType: 'jsonp',
});
}

var getEntityData = function(element,data){
var userLang;
var content;
var entityData = {title:'',description:''}
if(!data.error){
//Gets the preference languaje from the navigator
userLang = (navigator.language || navigator.userLanguage).split("-")[0]

content = data.entities[element.toUpperCase()]

//Check if the property/entity exist
if(!content.labels)return;

//Some properties and entities are only avalible in English
if(content.labels[userLang] && content.descriptions[userLang]){

entityData.title = content.labels[userLang].value +' ('+element+')'
entityData.description = content.descriptions[userLang].value

}else{ //English by default

let lb = content.labels['en'];
let desc = content.descriptions['en'];
if(lb){
entityData.title = lb.value +' ('+element+')';
}
if(desc){
entityData.description = desc.value
}

}
}
return entityData;
}


module.exports = {

Expand All @@ -123,6 +170,8 @@ module.exports = {
getEndPoint:getEndPoint,
isWikidataPrefix:isWikidataPrefix,
isWikidataEntitiesPrefix:isWikidataEntitiesPrefix,
isWikidataPropertiesPrefix:isWikidataPropertiesPrefix
isWikidataPropertiesPrefix:isWikidataPropertiesPrefix,
getEntity:getEntity,
getEntityData:getEntityData

}