Migrating from GrafoscopioUtils and implementing snippet tagging.
This commit is contained in:
parent
1cb940b93a
commit
5f37293f4d
72
Wiki/es/minidocs:-calendarios--d7pnm.md
Normal file
72
Wiki/es/minidocs:-calendarios--d7pnm.md
Normal file
@ -0,0 +1,72 @@
|
||||
---
|
||||
id: d7pnmr5dy8j995l5sbpmijayp
|
||||
title: MiniDocs: Calendarios
|
||||
created: 26 July 2022 4:30:40.031296 pm
|
||||
modified: 26 July 2022 4:30:40.031296 pm
|
||||
creator: <unknown>
|
||||
modifier: <unknown>
|
||||
---
|
||||
|
||||
<div st-class="LeTextSnippet"
|
||||
st-data="OrderedDictionary{'id':'Xm67vx2hDQCQfNiIAFQ03w==','parent':'d7pnmr5dy8j995l5sbpmijayp','created':'26 July 2022 4:31:48.539936 pm','modified':'26 July 2022 4:40:56.082426 pm','creator':'<unknown>','modifier':'<unknown>'}">
|
||||
MiniDocs también permite exportar documentos con vistas interactivas HTML,
|
||||
siempre y cuando los objetos en una narrativa de datos tengan métodos que permiten producir vistas.
|
||||
Por ejemplo, es posible usar [EchartsPharo](https://code.tupale.co/mutabiT/EchartsPharo)
|
||||
para producir una vista de un calendario interactivo, dado un conjunto de datos.
|
||||
</div>
|
||||
|
||||
<div st-class="LeTextSnippet"
|
||||
st-data="OrderedDictionary{'id':'bzCP5B2hDQCQg0xUAFQ03w==','parent':'d7pnmr5dy8j995l5sbpmijayp','created':'26 July 2022 4:40:59.04872 pm','modified':'26 July 2022 4:41:20.148041 pm','creator':'<unknown>','modifier':'<unknown>'}">
|
||||
Empecemos por definir un conjunto de eventos:
|
||||
</div>
|
||||
|
||||
<div st-class="LePharoSnippet"
|
||||
st-data="OrderedDictionary{'id':'NTIYxh2hDQCQfyBKAFQ03w==','parent':'d7pnmr5dy8j995l5sbpmijayp','created':'26 July 2022 4:32:26.836369 pm','modified':'26 July 2022 4:43:42.246158 pm','creator':'<unknown>','modifier':'<unknown>'}">
|
||||
~~~ Smalltalk
|
||||
citasOftalmologia := EcEvent new
|
||||
name: 'Cita en Oftalmología';
|
||||
dates: #('2022-01-25' '2022-03-19');
|
||||
color: Color orange "asHexString";
|
||||
type: 'graph'
|
||||
~~~
|
||||
</div>
|
||||
|
||||
<div st-class="LePharoSnippet"
|
||||
st-data="OrderedDictionary{'id':'EwkO5h2hDQCQhXS9AFQ03w==','parent':'d7pnmr5dy8j995l5sbpmijayp','created':'26 July 2022 4:41:23.041501 pm','modified':'26 July 2022 4:43:11.646316 pm','creator':'<unknown>','modifier':'<unknown>'}">
|
||||
~~~ Smalltalk
|
||||
quejasSupersalud := EcEvent new
|
||||
name: 'Queja en Supersalud';
|
||||
dates: #('2022-02-16' '2022-03-26' '2022-06-21');
|
||||
color: Color green ;
|
||||
type: 'graph'
|
||||
~~~
|
||||
</div>
|
||||
|
||||
<div st-class="LeTextSnippet"
|
||||
st-data="OrderedDictionary{'id':'bLcz6B2hDQCQioViAFQ03w==','parent':'d7pnmr5dy8j995l5sbpmijayp','created':'26 July 2022 4:42:00.944331 pm','modified':'26 July 2022 4:42:17.147409 pm','creator':'<unknown>','modifier':'<unknown>'}">
|
||||
Ahora agreguemos los eventos a un calendario:
|
||||
</div>
|
||||
|
||||
<div st-class="LePharoSnippet"
|
||||
st-data="OrderedDictionary{'id':'ujN/6R2hDQCQjFIuAFQ03w==','parent':'d7pnmr5dy8j995l5sbpmijayp','created':'26 July 2022 4:42:20.7895 pm','modified':'26 July 2022 4:44:14.709865 pm','creator':'<unknown>','modifier':'<unknown>'}">
|
||||
~~~ Smalltalk
|
||||
calendario := EcCalendar new.
|
||||
calendario events
|
||||
add: citasOftalmologia;
|
||||
add: quejasSupersalud.
|
||||
calendario
|
||||
~~~
|
||||
</div>
|
||||
|
||||
<div st-class="LeTextSnippet"
|
||||
st-data="OrderedDictionary{'id':'GbIS8h2hDQCQkK2MAFQ03w==','parent':'d7pnmr5dy8j995l5sbpmijayp','created':'26 July 2022 4:44:45.962014 pm','modified':'26 July 2022 4:45:03.976602 pm','creator':'<unknown>','modifier':'<unknown>'}">
|
||||
Y exportémoslo como una vista interactiva en HTML:
|
||||
</div>
|
||||
|
||||
<div st-class="LePharoSnippet"
|
||||
st-data="OrderedDictionary{'id':'ySqw8x2hDQCQkolbAFQ03w==','parent':'d7pnmr5dy8j995l5sbpmijayp','created':'26 July 2022 4:45:11.770686 pm','modified':'26 July 2022 4:50:39.982218 pm','creator':'<unknown>','modifier':'<unknown>','tags':Set['output']}">
|
||||
~~~ Smalltalk
|
||||
calendario asHTMLElement
|
||||
~~~
|
||||
</div>
|
||||
|
@ -62,7 +62,7 @@ LePage >> asMarkdown [
|
||||
nextPutAll: String lf.
|
||||
self metadata keysAndValuesDo: [ :k :v |
|
||||
bodyStream
|
||||
nextPutAll: k , ': ' , v;
|
||||
nextPutAll: k , ': "' , v, '"';
|
||||
nextPutAll: String lf ].
|
||||
bodyStream nextPutAll: '---' , String lf , String lf.
|
||||
self preorderTraversal
|
||||
|
@ -1,7 +1,46 @@
|
||||
Extension { #name : #LeTextSnippet }
|
||||
|
||||
{ #category : #'*MiniDocs' }
|
||||
LeTextSnippet >> tagged: aString [
|
||||
self optionAt: 'tags' ifPresent: [ (self optionAt: 'tags') add: aString; yourself ] ifAbsentPut: [ Set new ].
|
||||
^ self optionAt: 'tags'
|
||||
LeTextSnippet >> contentFrom: markdeepDiv [
|
||||
| sanitized |
|
||||
sanitized := markdeepDiv contentString.
|
||||
sanitized := sanitized allButFirst.
|
||||
sanitized := sanitized allButLast.
|
||||
self string: sanitized.
|
||||
]
|
||||
|
||||
{ #category : #'*MiniDocs' }
|
||||
LeTextSnippet >> metadata [
|
||||
|
||||
^ self optionAt: 'metadata' ifAbsentPut: [ self metadataInit ]
|
||||
]
|
||||
|
||||
{ #category : #'*MiniDocs' }
|
||||
LeTextSnippet >> metadataInit [
|
||||
|
||||
^ OrderedDictionary new
|
||||
at: 'id' put: self uidString;
|
||||
at: 'parent' put: self parentId;
|
||||
at: 'created' put: self createTime asString;
|
||||
at: 'modified' put: self latestEditTime asString;
|
||||
at: 'creator' put: self createEmail asString;
|
||||
at: 'modifier' put: self editEmail asString;
|
||||
yourself
|
||||
]
|
||||
|
||||
{ #category : #'*MiniDocs' }
|
||||
LeTextSnippet >> options [
|
||||
^ options
|
||||
]
|
||||
|
||||
{ #category : #'*MiniDocs' }
|
||||
LeTextSnippet >> parentId [
|
||||
self parent ifNil: [ ^ self ].
|
||||
^ self parent uidString.
|
||||
]
|
||||
|
||||
{ #category : #'*MiniDocs' }
|
||||
LeTextSnippet >> taggedWith: aString [
|
||||
self metadata at: 'tags' ifPresent: [ (self metadata at: 'tags') add: aString; yourself ] ifAbsentPut: [ Set new ].
|
||||
^ self metadata at: 'tags'
|
||||
]
|
||||
|
Loading…
Reference in New Issue
Block a user