Fixed resolver incorrectly stripping class names

This commit is contained in:
2026-06-13 09:48:40 +08:00
parent 803bd80557
commit 021655464d
8 changed files with 61 additions and 36 deletions
@@ -69,7 +69,7 @@
, visualizer = function ( submitted, override )
{
var id, stage = this.stage;
var id, title, stage = this.stage;
if( override )
{
@@ -103,8 +103,7 @@
/* @type override {_AstXObject_.AstroEdit.Visualizer.Snippet.Code.Override} */
, visualizer = function( submitted, override )
{
var lang, code, inline
, stage = this.stage;
var lang, code, inline, stage = this && this.stage;
if( override )
{
@@ -181,7 +181,7 @@
, visualizer = function ( submitted, override )
{
var hash, _obj, stage = this.stage;
var hash, preferred, _obj, stage = this.stage;
if( override )
{
+1
View File
@@ -26,6 +26,7 @@
var keyBinding = new EventKey(
"KeyDown", function ( e )
{
var code;
e = e || window.event;
if ( e.keyCode ) code = e.keyCode;
else if ( e.which ) code = e.which;
+1 -1
View File
@@ -22,7 +22,7 @@ _AstConf_.AstroEdit.paths = {};
/** @type {object} */
_AstConf_.AstroEdit.sections;
/** @type {object} */
/** @type {!Object<string, *>} */
_AstConf_.AstroEdit.flags = {};
/** @type {string} */
_AstConf_.AstroEdit.flags.URICount;
@@ -2,5 +2,5 @@ package generated
const (
IMAGE_TAG = "dev"
Timestamp = "20260612.044857"
Timestamp = "20260613.014630"
)
@@ -23,8 +23,8 @@ var ClassMap = &classmap.Map{
"Astro.Blog.AstroEdit.Visualizer.Snippet": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer", Imports: []string(nil), Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/_this.js", JSHash: "38f5d8512eabf1ffb4249b1414efd2362af8dc5c", CSSHash: "1"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.AcquireLib": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.AcquireLib", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/AcquireLib.js", JSHash: "2d9450e8551d6cf33aba8c6277b3b657dd8f88b7", CSSHash: "e3860ca0ac69a86e948b811da1ebf6ba85fad57f"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.ArticleContent": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.ArticleContent", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.Config", "System.utils.Perf", "Astro.utils.Date", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.compileProp", "System.Net.postData"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/ArticleContent.js", JSHash: "9b7b814b643d47b760d4ebd8bdfc245b68f29c18", CSSHash: "e1cfcf676ebfc3a9ab80139ab2f7e63a2a1b286f"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.ArticleLink": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.ArticleLink", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.Config", "System.utils.Perf", "Astro.utils.Date", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.compileProp", "System.Net.postData"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/ArticleLink.js", JSHash: "c5fb71721e8edb7be31181ccefbee12b83ce08ff", CSSHash: "2d71bce1fa868564d9dac50db338ef7eeed16fd9"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.Code": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.Code", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.compileProp"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Code.js", JSHash: "4862ea23df220145aaf8b9914554f3feb0d2a67d", CSSHash: "1963e8b907d049ab7228c4cccf5e34206dca2f6c"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.ArticleLink": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.ArticleLink", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.Config", "System.utils.Perf", "Astro.utils.Date", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.compileProp", "System.Net.postData"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/ArticleLink.js", JSHash: "8d1fc537add5e0572f7cb971819de2a9073c0533", CSSHash: "2d71bce1fa868564d9dac50db338ef7eeed16fd9"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.Code": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.Code", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.compileProp"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Code.js", JSHash: "06bdde157c5abefe6580ba768435acdda930b44b", CSSHash: "1963e8b907d049ab7228c4cccf5e34206dca2f6c"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.Footnote": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.Footnote", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Footnote.js", JSHash: "e0e3593457533a3d4c27a1abcc172c2a21427775", CSSHash: "e3b173a7579b3897bb98226cd52a56534f75ca15"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.Heading": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.Heading", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.compileProp"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Heading.js", JSHash: "7021e1443f4e3bf6a505fbd1a7dd40f84e871bc0", CSSHash: "1"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.Html": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.Html", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Html.js", JSHash: "ebe3b346c9b59026b6b85e100b8e987d80ba28c1", CSSHash: "1"}},
@@ -32,7 +32,7 @@ var ClassMap = &classmap.Map{
"Astro.Blog.AstroEdit.Visualizer.Snippet.Link": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.Link", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Link.js", JSHash: "cefacf44112324620e1eeb7a659a791a9d22426a", CSSHash: "963bca1730a62b372e667b0a3f888aeef5504968"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.Meta": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.Meta", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Meta.js", JSHash: "e4de1e58e9a40e94e9304abf7edf5926a74e8fed", CSSHash: "43e6cf20a8590ff0a820fed9ae53399edfb53ac4"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.RespH": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.RespH", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/RespH.js", JSHash: "baa3f89f1c369b0c85ad827153ee2e510bf2598a", CSSHash: "60ee66e1f25468b808af731338d2f10c9e74d8fe"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.SiteFile": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.SiteFile", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.Config", "System.utils.Perf", "System.Cycle.Trigger", "Astro.utils.Date", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.compileProp", "System.Net.getData"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/SiteFile.js", JSHash: "a503d87b94573aee5570800cf6dd35056d370c19", CSSHash: "47a59715388ff5f8abe4eb4e7e6000bf92de77b2"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.SiteFile": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.SiteFile", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.Config", "System.utils.Perf", "System.Cycle.Trigger", "Astro.utils.Date", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.compileProp", "System.Net.getData"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/SiteFile.js", JSHash: "5c35958f82cfe78e50b4daff3ddad59f39d49cb0", CSSHash: "47a59715388ff5f8abe4eb4e7e6000bf92de77b2"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.Sound": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.Sound", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.AstroEdit.Visualizer.Snippet.compileProp"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Sound.js", JSHash: "28242ff124de631ac76a6bb59c507f98727fafc8", CSSHash: "1"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.Spoiler": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.Spoiler", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "Astro.Blog.AstroEdit.Visualizer.Snippet.compileProp", "Astro.Blog.AstroEdit.Visualizer.Snippet.escapeStr", "Astro.Blog.AstroEdit.Visualizer.Snippet.unescapeStr"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Spoiler.js", JSHash: "c1fb99bebb735e8941ebb4e4734c2d3ed41f892c", CSSHash: "1"}},
"Astro.Blog.AstroEdit.Visualizer.Snippet.Video": {Name: "Astro.Blog.AstroEdit.Visualizer.Snippet.Video", Kind: "class", Parent: "Astro.Blog.AstroEdit.Visualizer.Snippet", Imports: []string{"System.utils.IKey", "System.utils.DataKey", "Dandelion.IDOMElement", "Dandelion", "Components.MessageBox", "System.Net.getData", "Dandelion.StaticRes.BLANK_IMG"}, Resource: classmap.Resource{Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Video.js", JSHash: "8b288548013b04bd869e669fa52d6e2ef155d2be", CSSHash: "ff1d4ae903c244a6aeaf78b12c375f1f45dfb3c2"}},
@@ -119,7 +119,7 @@ var ClassMap = &classmap.Map{
"Components": {Name: "Components", Kind: "class", Parent: "", Imports: []string(nil), Resource: classmap.Resource{Src: "Components/_this.js", JSHash: "f4cb7babe62a5cdae34d2c4ebcb55071e81da4ff", CSSHash: "1"}},
"Components.Console": {Name: "Components.Console", Kind: "class", Parent: "Components", Imports: []string{"System.utils.Perf", "System.Cycle", "System.Cycle.TICK", "System.Global", "System.Log", "System.Debug", "Dandelion", "Dandelion.IDOMElement", "Components.DockPanel"}, Resource: classmap.Resource{Src: "Components/Console.js", JSHash: "348c0ff1762c0a00ed813e3419f17ed695399ec3", CSSHash: "452f4a36e8fd7321c7d177a311047c8b71165e48"}},
"Components.DockPanel": {Name: "Components.DockPanel", Kind: "class", Parent: "Components", Imports: []string{"System.Cycle", "System.utils.DataKey", "Dandelion", "Dandelion.IDOMElement"}, Resource: classmap.Resource{Src: "Components/DockPanel.js", JSHash: "b11318868cba7e297dd61b66abfc038b27a4f6d8", CSSHash: "af0d91982c764ee62c46b243be68c08f2808e82b"}},
"Components.MessageBox": {Name: "Components.MessageBox", Kind: "class", Parent: "Components", Imports: []string{"System.Cycle.Trigger", "Dandelion", "Dandelion.IDOMObject", "System.utils.EventKey", "Dandelion.CSSAnimations"}, Resource: classmap.Resource{Src: "Components/MessageBox.js", JSHash: "c9950277a095d74885d188a518e5c0de09679091", CSSHash: "5571fa4c2e1324dcf1f2e18df8b6105cf37dfc53"}},
"Components.MessageBox": {Name: "Components.MessageBox", Kind: "class", Parent: "Components", Imports: []string{"System.Cycle.Trigger", "Dandelion", "Dandelion.IDOMObject", "System.utils.EventKey", "Dandelion.CSSAnimations"}, Resource: classmap.Resource{Src: "Components/MessageBox.js", JSHash: "63c831ec6493912492780009a76997d7bc59cad4", CSSHash: "5571fa4c2e1324dcf1f2e18df8b6105cf37dfc53"}},
"Components.Mouse": {Name: "Components.Mouse", Kind: "class", Parent: "Components", Imports: []string(nil), Resource: classmap.Resource{Src: "Components/Mouse/_this.js", JSHash: "9ec5ced53a20ea1d057e2142668e27e5df7d49f6", CSSHash: "1"}},
"Components.Mouse.Clipboard": {Name: "Components.Mouse.Clipboard", Kind: "class", Parent: "Components.Mouse", Imports: []string{"System.Global", "System.Debug", "System.utils.Perf", "System.Cycle", "Dandelion.IDOMElement", "Dandelion"}, Resource: classmap.Resource{Src: "Components/Mouse/Clipboard.js", JSHash: "742b2522cd0d5dad897d5c3afa2d568494661912", CSSHash: "1b7f85206ce1560ed23d3b270e093022e25d2e61"}},
"Components.Mouse.Clipboard.capture": {Name: "Components.Mouse.Clipboard.capture", Kind: "method", Parent: "Components.Mouse.Clipboard", Imports: []string(nil), Resource: classmap.Resource{Src: "", JSHash: "", CSSHash: ""}},
@@ -326,8 +326,8 @@ var ClassMap = &classmap.Map{
"Astro/Blog/AstroEdit/Uploader.js": {Src: "Astro/Blog/AstroEdit/Uploader.js", JSHash: "bb696230f4ae9785fc482b761f97afd88a1fe993", CSSHash: "1"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/AcquireLib.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/AcquireLib.js", JSHash: "2d9450e8551d6cf33aba8c6277b3b657dd8f88b7", CSSHash: "e3860ca0ac69a86e948b811da1ebf6ba85fad57f"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/ArticleContent.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/ArticleContent.js", JSHash: "9b7b814b643d47b760d4ebd8bdfc245b68f29c18", CSSHash: "e1cfcf676ebfc3a9ab80139ab2f7e63a2a1b286f"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/ArticleLink.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/ArticleLink.js", JSHash: "c5fb71721e8edb7be31181ccefbee12b83ce08ff", CSSHash: "2d71bce1fa868564d9dac50db338ef7eeed16fd9"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/Code.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Code.js", JSHash: "4862ea23df220145aaf8b9914554f3feb0d2a67d", CSSHash: "1963e8b907d049ab7228c4cccf5e34206dca2f6c"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/ArticleLink.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/ArticleLink.js", JSHash: "8d1fc537add5e0572f7cb971819de2a9073c0533", CSSHash: "2d71bce1fa868564d9dac50db338ef7eeed16fd9"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/Code.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Code.js", JSHash: "06bdde157c5abefe6580ba768435acdda930b44b", CSSHash: "1963e8b907d049ab7228c4cccf5e34206dca2f6c"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/Footnote.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Footnote.js", JSHash: "e0e3593457533a3d4c27a1abcc172c2a21427775", CSSHash: "e3b173a7579b3897bb98226cd52a56534f75ca15"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/Heading.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Heading.js", JSHash: "7021e1443f4e3bf6a505fbd1a7dd40f84e871bc0", CSSHash: "1"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/Html.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Html.js", JSHash: "ebe3b346c9b59026b6b85e100b8e987d80ba28c1", CSSHash: "1"},
@@ -335,7 +335,7 @@ var ClassMap = &classmap.Map{
"Astro/Blog/AstroEdit/Visualizer/Snippet/Link.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Link.js", JSHash: "cefacf44112324620e1eeb7a659a791a9d22426a", CSSHash: "963bca1730a62b372e667b0a3f888aeef5504968"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/Meta.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Meta.js", JSHash: "e4de1e58e9a40e94e9304abf7edf5926a74e8fed", CSSHash: "43e6cf20a8590ff0a820fed9ae53399edfb53ac4"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/RespH.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/RespH.js", JSHash: "baa3f89f1c369b0c85ad827153ee2e510bf2598a", CSSHash: "60ee66e1f25468b808af731338d2f10c9e74d8fe"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/SiteFile.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/SiteFile.js", JSHash: "a503d87b94573aee5570800cf6dd35056d370c19", CSSHash: "47a59715388ff5f8abe4eb4e7e6000bf92de77b2"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/SiteFile.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/SiteFile.js", JSHash: "5c35958f82cfe78e50b4daff3ddad59f39d49cb0", CSSHash: "47a59715388ff5f8abe4eb4e7e6000bf92de77b2"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/Sound.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Sound.js", JSHash: "28242ff124de631ac76a6bb59c507f98727fafc8", CSSHash: "1"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/Spoiler.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Spoiler.js", JSHash: "c1fb99bebb735e8941ebb4e4734c2d3ed41f892c", CSSHash: "1"},
"Astro/Blog/AstroEdit/Visualizer/Snippet/Video.js": {Src: "Astro/Blog/AstroEdit/Visualizer/Snippet/Video.js", JSHash: "8b288548013b04bd869e669fa52d6e2ef155d2be", CSSHash: "ff1d4ae903c244a6aeaf78b12c375f1f45dfb3c2"},
@@ -395,7 +395,7 @@ var ClassMap = &classmap.Map{
"Astro/utils/_this.js": {Src: "Astro/utils/_this.js", JSHash: "21e99449ec5c1a4b6d25164db9434132aeea5ad3", CSSHash: "1"},
"Components/Console.js": {Src: "Components/Console.js", JSHash: "348c0ff1762c0a00ed813e3419f17ed695399ec3", CSSHash: "452f4a36e8fd7321c7d177a311047c8b71165e48"},
"Components/DockPanel.js": {Src: "Components/DockPanel.js", JSHash: "b11318868cba7e297dd61b66abfc038b27a4f6d8", CSSHash: "af0d91982c764ee62c46b243be68c08f2808e82b"},
"Components/MessageBox.js": {Src: "Components/MessageBox.js", JSHash: "c9950277a095d74885d188a518e5c0de09679091", CSSHash: "5571fa4c2e1324dcf1f2e18df8b6105cf37dfc53"},
"Components/MessageBox.js": {Src: "Components/MessageBox.js", JSHash: "63c831ec6493912492780009a76997d7bc59cad4", CSSHash: "5571fa4c2e1324dcf1f2e18df8b6105cf37dfc53"},
"Components/Mouse/Clipboard.js": {Src: "Components/Mouse/Clipboard.js", JSHash: "742b2522cd0d5dad897d5c3afa2d568494661912", CSSHash: "1b7f85206ce1560ed23d3b270e093022e25d2e61"},
"Components/Mouse/ContextMenu.js": {Src: "Components/Mouse/ContextMenu.js", JSHash: "5f060fc046686fc71ec1a6c0742407fc902387c5", CSSHash: "d5a5f1a4a0db9a440b9a070f9879beaddffbd99a"},
"Components/Mouse/_this.js": {Src: "Components/Mouse/_this.js", JSHash: "9ec5ced53a20ea1d057e2142668e27e5df7d49f6", CSSHash: "1"},
+37 -12
View File
@@ -113,52 +113,77 @@ func (r *Resolver) ResolveRequest(code string, mode OutputMode, excludes []strin
func (r *Resolver) ResolveSymbol(name string) ([]classmap.Symbol, error) {
seen := map[string]bool{}
var out []classmap.Symbol
if err := r.resolveImport(name, seen, &out); err != nil {
return nil, err
}
return out, nil
}
func (r *Resolver) resolveImport(name string, seen map[string]bool, out *[]classmap.Symbol) error {
if strings.HasSuffix(name, ".*") {
return r.resolveWildcard(name, seen, out)
}
return r.resolveOne(name, seen, out)
}
func (r *Resolver) resolveWildcard(name string, seen map[string]bool, out *[]classmap.Symbol) error {
prefix := strings.TrimSuffix(name, "*")
namespace := strings.TrimSuffix(prefix, ".")
var keys []string
for k, s := range r.Map.Symbols {
if strings.HasPrefix(k, prefix) && s.Kind == classmap.KindClass && k != strings.TrimSuffix(prefix, ".") {
if strings.HasPrefix(k, prefix) &&
s.Kind == classmap.KindClass &&
k != namespace {
keys = append(keys, k)
}
}
if len(keys) == 0 {
return nil, fmt.Errorf("namespace does not exist or contains no classes: %s", name)
return fmt.Errorf("namespace does not exist or contains no classes: %s", name)
}
sort.Strings(keys)
for _, k := range keys {
if err := r.resolveOne(k, seen, &out); err != nil {
return nil, err
if err := r.resolveOne(k, seen, out); err != nil {
return err
}
}
return out, nil
}
if err := r.resolveOne(name, seen, &out); err != nil {
return nil, err
}
return out, nil
return nil
}
func (r *Resolver) resolveOne(name string, seen map[string]bool, out *[]classmap.Symbol) error {
if seen[name] {
return nil
}
sym, ok := r.Map.Symbols[name]
if !ok {
return fmt.Errorf("no such class: %s", name)
}
seen[name] = true
imports := sym.Imports
// Old resolver uses parent imports when the found node is prop/method.
if sym.Kind != classmap.KindClass && sym.Parent != "" {
if p, ok := r.Map.Symbols[sym.Parent]; ok {
imports = p.Imports
}
}
for _, imp := range imports {
if err := r.resolveOne(imp, seen, out); err != nil {
if err := r.resolveImport(imp, seen, out); err != nil {
return err
}
}
*out = append(*out, sym)
return nil
}
@@ -315,7 +340,7 @@ func DecodeRequest(code string) ([]string, error) {
sep = ","
}
}
cleaner := regexp.MustCompile(`[^A-Za-z.\*\-_/ ,]`)
cleaner := regexp.MustCompile(`[^A-Za-z0-9.\*\-_/ ,]`)
decoded = cleaner.ReplaceAllString(decoded, "")
var fields []string
for _, p := range strings.Split(decoded, sep) {