Added RespH Snippet

This commit is contained in:
2022-04-05 20:00:42 +09:00
parent 16f112485a
commit 5acc48289c
5 changed files with 105 additions and 11 deletions

View File

@@ -65,13 +65,7 @@
else
{
IDOMElement( stage ).setAttribute(new DataKey( "value", code ));
temp = stage.firstChild;
temp.removeChild(temp.firstChild);
stage.firstChild.appendChild(Dand.textNode( code ));
temp = stage;
}
i = { _code: code, _stage: temp };

View File

@@ -0,0 +1,99 @@
(function ()
{
var ns = __namespace( "Astro.Blog.AstroEdit.Visualizer.Snippet" );
/** @type {System.utils.IKey} */
var IKey = __import( "System.utils.IKey" );
/** @type {System.utils.DataKey} */
var DataKey = __import( "System.utils.DataKey" );
/** @type {Dandelion.IDOMElement} */
var IDOMElement = __import( "Dandelion.IDOMElement" );
/** @type {Dandelion} */
var Dand = __import( "Dandelion" );
/** @type {Components.MessageBox} */
var MessageBox = __import( "Components.MessageBox" );
var escapeStr = ns[ NS_INVOKE ]( "escapeStr" );
var unescapeStr = ns[ NS_INVOKE ]( "unescapeStr" );
var resph = function( insertSnippet, snippetWrap, createContext, override )
{
var temp, i, j
, handler = function ()
{
// Input fields
var v_snippetInput = Dand.wrap( "textarea", null, "v_snippet_input" );
if ( this._stage )
{
v_snippetInput.value = this._code;
}
// Popup MessageBox
new MessageBox(
"Insert Response Headers"
, v_snippetInput
, "OK", "Cancel"
, visualizer.bind({ code: v_snippetInput, stage: this._stage })
).show();
}
, visualizer = function( submitted, override )
{
var code, stage = this.stage;
code = override ? unescapeStr( override.value ) : this.code.value;
if (submitted && code)
{
if (!stage)
{
// Visualize component
temp = Dand.wrap(
'span', null, "flsf"
, "Response Headers"
, [
new DataKey( "value", code )
, new IKey(
"style", "background-color: #444; color: white; padding: 0.2em 0.5em;"
)
]
);
insertSnippet(j = snippetWrap( "RespH", temp, false, "span" ), Boolean(override));
}
else
{
IDOMElement( stage ).setAttribute(new DataKey( "value", code ));
temp = stage;
}
i = { _code: code, _stage: temp };
// Set context menu
createContext( i, j, handler );
}
};
if ( override )
{
visualizer( true, override );
override = false;
}
else
{
return handler;
}
return true;
};
var compile = function (stage)
{
return "[resph]" + escapeStr( IDOMElement(stage).getDAttribute("value") ) + "[/resph]";
};
__static_method( resph, "compile", compile );
ns[ NS_EXPORT ]( EX_CLASS, "RespH", resph );
})();

View File

@@ -38,6 +38,7 @@
, "SiteFile" , "background: royalblue;"
, "Heading" , ""
, "Footnote" , ""
, "RespH" , ""
, "Meta" , ""
, "ArticleLink" , ""
, "ArticleContent" , ""