56 lines
1.3 KiB
Smalltalk
56 lines
1.3 KiB
Smalltalk
Extension { #name : #LeTextSnippet }
|
|
|
|
{ #category : #'*MiniDocs' }
|
|
LeTextSnippet >> asLePage [
|
|
| page title currentSnippet |
|
|
title := self contentAsString markdownHeaders associations first value.
|
|
title := (title trimBoth: [:char | char = $# ]) trimmed.
|
|
page := LePage new
|
|
initializeTitle: title.
|
|
currentSnippet := LeTextSnippet new
|
|
string: self contentAsString.
|
|
page addSnippet: currentSnippet.
|
|
self database addPage: page.
|
|
self childrenDo: [:child |
|
|
child moveToPageTitled: page title
|
|
].
|
|
self removeSelfCommand.
|
|
^ page.
|
|
]
|
|
|
|
{ #category : #'*MiniDocs' }
|
|
LeTextSnippet >> fromMarkdeep: markdeepDiv [
|
|
|
|
^ markdeepDiv asSnippetDictionary asLepiterSnippet
|
|
]
|
|
|
|
{ #category : #'*MiniDocs' }
|
|
LeTextSnippet >> fromString: aString [
|
|
|
|
self string: aString
|
|
]
|
|
|
|
{ #category : #'*MiniDocs' }
|
|
LeTextSnippet >> metadata [
|
|
|
|
^ self metadataUpdate
|
|
]
|
|
|
|
{ #category : #'*MiniDocs' }
|
|
LeTextSnippet >> options [
|
|
^ options
|
|
]
|
|
|
|
{ #category : #'*MiniDocs' }
|
|
LeTextSnippet >> parentId [
|
|
self parent ifNil: [ ^ self ].
|
|
(self parent isString) ifTrue: [^ self parent].
|
|
^ 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'
|
|
]
|