Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Jorge Garcia flores
ChêneTAL
Commits
6f3d6284
Commit
6f3d6284
authored
Aug 12, 2020
by
Quentin David
Browse files
Lot of new things
parent
aab7e9fe
Changes
14
Hide whitespace changes
Inline
Side-by-side
src/components/DefineCorpus/AddCorpus.vue
View file @
6f3d6284
<
template
>
<
template
>
<v-tabs
grow
<v-container
flex
fill-height
>
v-model=
"tab"
<v-tabs
grow
>
v-model=
"tab"
<v-tab
v-for=
"item in tab_items"
:key=
"item.tab"
>
>
{{
item
.
tab
}}
<v-tab
</v-tab>
v-for=
"item in tab_items"
:key=
"item.tab"
>
{{
item
.
tab
}}
</v-tab>
<v-tabs-items
v-model=
"tab"
class=
"my-4"
vertical
>
<v-tabs-items
v-model=
"tab"
class=
"my-4"
vertical
>
<v-tab-item>
<v-tab-item>
<v-card
outlined
height=
100px
>
<v-card
outlined
height=
8em
>
<v-card-text
<v-card-text
class=
"justify-center text-center"
class=
"justify-center text-center"
>
Sélection d'un fichier local
</v-card-text>
>
</v-card>
<v-file-input
</v-tab-item>
label=
"Choisissez un ou plusieurs fichiers"
<v-tab-item>
multiple
<InputText
/>
hint=
"Formats acceptés: PDF, TXT, ...."
</v-tab-item>
persistent-hint
<v-tab-item>
small-chips
<v-card
outlined
height=
100px
>
>
<v-card-text
</v-file-input>
class=
"justify-center text-center"
</v-card-text>
>
Sélection de corpus de profil
</v-card-text>
</v-card>
</v-card>
</v-tab-item>
</v-tab-item>
<v-tab-item>
<v-tab-item>
<InputText
/>
<v-card
outlined
height=
100px
>
</v-tab-item>
<v-card-text
<v-tab-item>
class=
"justify-center text-center"
<v-card
outlined
height=
8em
>
>
Sélection de corpus partagé
</v-card-text>
<v-card-text>
</v-card>
<v-select
:items=
"test_profile_corpus"
</v-tab-item>
label=
"Choisissez le corpus que vous voulez traiter"
</v-tabs-items>
hint=
"Vous pouvez définir vos corpus dans votre profil"
</v-tabs>
persistent-hint
outlined
>
</v-select>
</v-card-text>
</v-card>
</v-tab-item>
<v-tab-item>
<v-card
outlined
height=
8em
>
<v-card-text
class=
"justify-center text-center"
>
<v-select
:items=
"test_common_corpus"
label=
"Choisissez le corpus que vous voulez traiter"
outlined
>
</v-select>
</v-card-text>
</v-card>
</v-tab-item>
</v-tabs-items>
</v-tabs>
</v-container>
</
template
>
</
template
>
<
script
>
<
script
>
import
InputText
from
'
@/components/DefineCorpus/InputText
'
;
import
InputText
from
'
@/components/DefineCorpus/InputText
'
;
...
@@ -51,6 +74,8 @@
...
@@ -51,6 +74,8 @@
],
],
selected
:
null
,
selected
:
null
,
test
:
{
"
fr
"
:
false
,
"
en
"
:
false
},
test
:
{
"
fr
"
:
false
,
"
en
"
:
false
},
test_profile_corpus
:
[
"
My_Corpus1
"
,
"
À la recherche du temps perdu
"
,
"
Libé_1980_2010
"
],
test_common_corpus
:
[
"
CommonCorpus1
"
,
"
LIPN_Articles
"
,
"
Sequoia
"
]
}),
}),
components
:
{
components
:
{
InputText
,
InputText
,
...
...
src/components/DefineCorpus/CorpusOptions.vue
View file @
6f3d6284
...
@@ -8,37 +8,77 @@
...
@@ -8,37 +8,77 @@
</v-card-title>
</v-card-title>
<v-form
class=
"px-12"
>
<v-form
class=
"px-12"
>
<v-select
<v-row>
class=
"my-5"
<v-col
cols=
"6"
>
v-model=
"lang_select"
<v-select
:items=
"languages"
class=
"my-5"
label=
"Langue du corpus"
v-model=
"lang_select"
required
:items=
"languages"
></v-select>
label=
"Langue du corpus"
required
outlined
max-width=
80%
></v-select>
</v-col>
<v-divider/>
<v-divider/>
<v-card
outlined
class=
"px-10 py-4 mb-5"
>
<v-col
cols=
"6"
>
<v-card-title
class=
"subtitle-2"
>
Métadonnées (facultatif)
</v-card-title>
<v-card
outlined
class=
"px-5 py-4 mb-5"
>
<v-text-field
<v-card-title
class=
"subtitle-2"
>
Métadonnées (facultatif)
class=
"mt-0"
</v-card-title>
v-model=
"author"
<v-card-text>
label=
"Auteur"
<v-text-field
></v-text-field>
class=
"mt-0"
v-model=
"author"
label=
"Auteur"
></v-text-field>
<v-text-field
<v-text-field
class=
"pt-0 mt-0"
class=
"pt-0 mt-0"
v-model=
"date"
v-model=
"date"
label=
"Date"
label=
"Date"
></v-text-field>
></v-text-field>
<v-text-field
<v-text-field
class=
"mt-0 pt-0"
class=
"mt-0 pt-0"
v-model=
"type"
v-model=
"type"
label=
"Type de document"
label=
"Type de document"
></v-text-field>
></v-text-field>
</v-card>
</v-form>
<v-row
v-for=
"metadata in additional_metadata"
:key=
"metadata.id"
>
<v-col>
<v-text-field
class=
"mt-0 pt-0"
label=
"Nom de la métadonnée"
v-model=
"metadata.name"
></v-text-field>
</v-col>
<v-col>
<v-text-field
class=
"mt-0 pt-0"
label=
"Valeur de la métadonnée"
v-model=
"metadata.value"
></v-text-field>
</v-col>
<v-col
cols=
"1"
>
<v-btn
icon
@
click=
"delete_metadata(metadata.id)"
>
<v-icon>
fa-times
</v-icon>
</v-btn>
</v-col>
</v-row>
</v-card-text>
<v-card-actions>
<v-btn
elevation=
"6"
@
click=
"add_metadata()"
>
<v-icon>
mdi-plus
</v-icon>
Ajouter une métadonnée
</v-btn>
</v-card-actions>
</v-card>
</v-col>
</v-row>
</v-form>
</v-card>
</v-card>
</
template
>
</
template
>
<
script
>
<
script
>
...
@@ -50,6 +90,26 @@
...
@@ -50,6 +90,26 @@
author
:
''
,
author
:
''
,
date
:
''
,
date
:
''
,
type
:
''
,
type
:
''
,
additional_metadata_id
:
0
,
additional_metadata
:
[],
}),
}),
methods
:
{
add_metadata
:
function
()
{
this
.
additional_metadata_id
+=
1
;
this
.
additional_metadata
.
push
({
id
:
this
.
additional_metadata_id
,
name
:
""
,
value
:
""
})
},
delete_metadata
:
function
(
metadata_id
)
{
var
index
=
null
;
for
(
var
i
=
0
;
i
<
this
.
additional_metadata
.
length
;
i
++
)
{
if
(
this
.
additional_metadata
[
i
].
id
==
metadata_id
)
{
index
=
i
;
}
}
if
(
index
!==
null
)
{
this
.
additional_metadata
.
splice
(
index
,
1
);
}
}
},
}
}
</
script
>
</
script
>
\ No newline at end of file
src/components/Corpus.vue
→
src/components/
DefineCorpus/Define
Corpus.vue
View file @
6f3d6284
<
template
>
<
template
>
<v-container>
<v-container
class=
"my-5"
>
<v-card
outlined
class=
"my-5 px-6"
>
<v-card
outlined
class=
"my-5 px-6"
>
<v-card-title
class=
"justify-center py-6"
>
<v-card-title
class=
"justify-center py-6"
>
<h1
class=
"display-3"
>
Choix du corpus
</h1>
<h1
class=
"display-3"
>
Choix du corpus
</h1>
...
...
src/components/DefineCorpus/InputText.vue
View file @
6f3d6284
<
template
>
<
template
>
<v-textarea
<v-textarea
hide-details
outlined
outlined
height=
8em
auto-grow
auto-grow
clearable
clearable
label=
"Entrez votre texte ici"
label=
"Entrez votre texte ici"
...
...
src/components/DefineTreatment/DefinePipeline.vue
View file @
6f3d6284
<
template
>
<
template
>
<v-container>
<v-card
outlined
>
<v-card
outlined
class=
"my-5"
>
<v-card-text>
<v-card-text>
<v-row>
<v-row>
<v-col
<v-col
v-for=
"module in modules"
v-for=
"module in modules"
:key=
"module.name"
>
:key=
"module.name"
>
<v-card
<!-- align="centger" for col
<v-btn
outlined
@
click=
"checkModule(module)"
elevation=
"2"
>
{{
module
.
name
}}
</v-btn>
-->
<v-card
outlined
elevation=
"2"
>
<v-card-title>
{{
module
.
name
}}
</v-card-title>
<v-card-subtitle>
{{
module
.
description
}}
</v-card-subtitle>
<!-- CANDY ! -->
<v-card-actions>
<v-btn
text
>
Add
</v-btn>
<v-btn
@
click=
"checkModule(module)"
text
>
Parameters
</v-btn>
<v-spacer/>
<v-btn
icon
@
click=
"show_desc = !show_desc"
>
<v-icon>
fa-question-circle
</v-icon>
</v-btn>
</v-card-actions>
<v-expand-transition>
<div
v-show=
"show_desc"
>
<v-divider/>
<v-card-text>
{{
module
.
description
}}
</v-card-text>
</div>
</v-expand-transition>
</v-card>
</v-col>
</v-row>
<v-slide-y-transition>
<v-card
v-if=
"chosen_module"
v-show=
"chosen_module"
elevation=
"3"
color=
"grey lighten-3"
class=
"mt-2"
>
>
<v-card-title>
<v-card-title>
Paramètre pour
{{
chosen_
module
.
name
}}
{{
module
.
name
}}
</v-card-title>
</v-card-title>
<v-card-text>
<v-card-subtitle>
Paramètre:
{{
chosen_module
.
parameters
}}
{{
module
.
description
}}
</v-card-text>
</v-card-subtitle>
<!-- CANDY ! -->
<v-card-actions>
<v-card-actions>
<v-btn>
Ajouter à la chaîne
</v-btn>
<v-btn
text
@
click=
"checkModule(module)"
>
Ajouter à la chaîne
</v-btn>
<v-spacer/>
<v-btn
icon
@
click=
"show_desc[module.name] = !show_desc[module.name]"
>
<v-icon>
fa-question-circle
</v-icon>
</v-btn>
</v-card-actions>
</v-card-actions>
<v-expand-transition>
<div
v-show=
"show_desc[module.name]"
>
<v-divider/>
<v-card-text>
{{
module
.
description
}}
</v-card-text>
</div>
</v-expand-transition>
</v-card>
</v-card>
</v-slide-y-transition>
</v-col>
</v-row>
<!--
<div
<v-slide-y-transition>
id=
"round-box"
<v-card
class=
"mt-5 pa-5 grey lighten-2"
v-if=
"chosen_module"
v-if=
"chosen_module"
v-show=
"chosen_module"
transition=
"slide-y-transition"
elevation=
"3"
color=
"grey lighten-3"
class=
"mt-2 pb-2"
>
>
<
h3
class=
"display-1 mb-10"
>
<
v-card-title
>
Paramètre pour
{{
chosen_module
.
name
}}
Paramètre pour
{{
chosen_module
.
name
}}
</
h3
>
</
v-card-title
>
<
p
>
<
v-card-text
>
Paramètre:
{{
chosen_module
.
parameters
}}
<ModuleParametersForm
:parameters=
"
chosen_module.parameters
"
/>
</
p
>
</
v-card-text
>
<v-
btn
<v-
card-actions
class=
"ml-2"
>
class=
"mt-5"
<v-btn>
>
<v-icon
left
>
fa-plus-circle
</v-icon
>
Ajouter à la chaîne
Ajouter à la chaîne
</v-btn>
</v-btn>
</div>
--
>
</v-card-actions
>
</v-card>
</v-
card-text>
</v-
slide-y-transition>
</v-card>
</v-card
-text
>
</v-c
ontainer
>
</v-c
ard
>
</
template
>
</
template
>
<
script
>
<
script
>
import
ModuleParametersForm
from
'
@/components/DefineTreatment/ModuleParametersForm
'
export
default
{
export
default
{
data
:()
=>
({
data
:()
=>
({
modules
:
modules
:
...
@@ -110,9 +83,45 @@ export default {
...
@@ -110,9 +83,45 @@ export default {
{
name
:
"
SDMC
"
,
{
name
:
"
SDMC
"
,
description
:
"
Outil de fouille de motifs
"
,
description
:
"
Outil de fouille de motifs
"
,
parameters
:
parameters
:
{
[
"
Parameter 2
"
:
"
This is parameter 1
"
,
{
}
label
:
"
Type de motifs calculés
"
,
name
:
"
motif_type
"
,
type
:
"
List-Mono
"
,
items
:
[
"
Forme du mot seul
"
,
"
Lemme du mot seul
"
,
"
Catégorie syntaxique du mot seul
"
,
"
Catégorie syntaxique et lemme du mot
"
],
default_value
:
"
Lemme du mot seul
"
},
{
label
:
"
Représentation condensée des motifs
"
,
name
:
"
motif_representation
"
,
type
:
"
List-Mono
"
,
items
:
[
"
Fermés (tous les motifs)
"
,
"
Fermés (sans sous-motifs de même fréquence)
"
,
"
Maximaux (en ôtant les sous-motifs)
"
],
default_value
:
"
Fermés (tous les motifs)
"
},
{
label
:
"
Gap
"
,
name
:
"
gap
"
,
description
:
"
Nombre d'items que l'extracteur peut ignorer entre deux items d'un motif extrait
"
,
type
:
"
Int-2
"
,
items
:
[
"
Minimal
"
,
"
Maximal
"
],
default_value
:
[
"
0
"
,
"
10
"
],
},
{
label
:
"
Support minimal absolu
"
,
name
:
"
minimal_absolute_support
"
,
description
:
"
Nombre d'occurrence minimal d'un motif dans le corpus pour être extrait
"
,
type
:
"
Int
"
,
default
:
[
"
100
"
]
},
{
label
:
"
Appartenance d'une ou plusieurs catégories
"
,
name
:
"
categories
"
,
type
:
"
List-Poly
"
,
items
:
[
"
Nom
"
,
"
Verbe
"
,
"
Adjectif
"
,
"
Adverbe
"
],
}
],
},
},
{
name
:
"
Néoveille
"
,
{
name
:
"
Néoveille
"
,
description
:
"
Détecteur de néologismes
"
,
description
:
"
Détecteur de néologismes
"
,
...
@@ -130,8 +139,12 @@ export default {
...
@@ -130,8 +139,12 @@ export default {
}
}
],
],
chosen_module
:
undefined
,
chosen_module
:
undefined
,
show_desc
:
false
,
show_desc
:
{
"
Morfetik
"
:
false
,
"
SDMC
"
:
false
,
"
Néoveille
"
:
false
,
"
Modulix
"
:
false
,
},
}),
}),
methods
:{
methods
:{
checkModule
:
function
(
module
)
{
checkModule
:
function
(
module
)
{
...
@@ -142,6 +155,9 @@ export default {
...
@@ -142,6 +155,9 @@ export default {
this
.
chosen_module
=
module
;
this
.
chosen_module
=
module
;
}
}
}
}
},
components
:
{
ModuleParametersForm
,
}
}
}
}
</
script
>
</
script
>
...
...
src/components/Treatment.vue
→
src/components/
DefineTreatment/Define
Treatment.vue
View file @
6f3d6284
...
@@ -4,7 +4,8 @@
...
@@ -4,7 +4,8 @@
<v-card-title
class=
"justify-center py-6"
>
<v-card-title
class=
"justify-center py-6"
>
<h1
class=
"display-3"
>
Choix des modules
</h1>
<h1
class=
"display-3"
>
Choix des modules
</h1>
</v-card-title>
</v-card-title>
<DefinePipeline/>
<DefinePipeline
class=
"my-5"
/>
<ModuleChain
class=
"my-5"
/>
</v-card>
</v-card>
<v-btn
block
color=
"success"
>
Lancer le traitement
</v-btn>
<v-btn
block
color=
"success"
>
Lancer le traitement
</v-btn>
</v-container>
</v-container>
...
@@ -12,10 +13,12 @@
...
@@ -12,10 +13,12 @@
<
script
>
<
script
>
import
DefinePipeline
from
'
@/components/DefineTreatment/DefinePipeline
'
import
DefinePipeline
from
'
@/components/DefineTreatment/DefinePipeline
'
import
ModuleChain
from
'
@/components/DefineTreatment/ModuleChain
'
export
default
{
export
default
{
name
:
'
Treatment
'
,
name
:
'
Treatment
'
,
components
:
{
components
:
{
DefinePipeline
,
DefinePipeline
,
ModuleChain
,
},
},
}
}
</
script
>
</
script
>
\ No newline at end of file
src/components/DefineTreatment/ModuleChain.vue
0 → 100644
View file @
6f3d6284
<
template
>
<v-card
outlined
>
<v-timeline
class=
"ma-5"
dense
>
<v-timeline-item
icon=
"mdi-arrow-down"
>
</v-timeline-item>
<v-timeline-item
icon=
"fa-cubes"
fill-dot
>
<v-card
outlined
elevation=
"6"
>
<v-row
align=
"center"
>
<v-col>
<v-card-title>
Morfetik
</v-card-title>
</v-col>
<v-col
class=
"text-right mr-3"
>
<v-btn
icon
>
<v-icon>
fa-times-circle
</v-icon>
</v-btn>
</v-col>
</v-row>
<v-card-text>
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
Doloribus vel voluptatibus dolore explicabo delectus rerum possimus nemo rem.
Beatae, dolorum. Aliquid quas doloremque est, dolorem earum voluptatem dignissimos omnis velit!
</v-card-text>
</v-card>
</v-timeline-item>
<v-timeline-item
icon=
"mdi-arrow-down"
>
</v-timeline-item>
<v-timeline-item
icon=
"fa-cubes"
fill-dot
>
<v-card
outlined
elevation=
"6"
>
<v-row
align=
"center"
>
<v-col>
<v-card-title>
Morfetik
</v-card-title>
</v-col>
<v-col
class=
"text-right mr-3"
>
<v-btn
icon
>
<v-icon>
fa-times-circle
</v-icon>
</v-btn>
</v-col>
</v-row>
<v-card-text>
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
Doloribus vel voluptatibus dolore explicabo delectus rerum possimus nemo rem.
Beatae, dolorum. Aliquid quas doloremque est, dolorem earum voluptatem dignissimos omnis velit!
</v-card-text>
</v-card>
</v-timeline-item>
</v-timeline>