add unversioned demo files
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/css/demo.css.map b/tobago-example/tobago-example-demo/src/main/webapp/css/demo.css.map
new file mode 100644
index 0000000..2096b0c
--- /dev/null
+++ b/tobago-example/tobago-example-demo/src/main/webapp/css/demo.css.map
@@ -0,0 +1,12 @@
+{
+ "version": 3,
+ "file": "demo.css",
+ "sources": [
+ "../../../../npm/scss/demo.scss"
+ ],
+ "sourcesContent": [
+ "/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n.box-shadow {\n box-shadow: 0 0 5px 5px rgba(200, 200, 200, 0.5);\n}\n\n.demo-selected {\n background-color: #ffddff;\n}\n\n#demo-view-source .demo-selected {\n border: 1px solid #cccccc;\n}\n\n.blue {\n background-color: #2aabff;\n}\n\n.demo-data-attribute {\n height: 100px;\n border: 1px solid #000000;\n border-radius: .25rem;\n}\n\ndemo-highlight {\n font-size: 75%;\n}\n\n/* todo: should be switchable\n.comment {\n display: none;\n}\n*/\n\n/* Prism and Bootstrap both use \"tag\" as CSS class name. So we need to \"fix\" some stuff. */\n.language-markup .token.tag {\n font-weight: inherit;\n font-size: inherit;\n line-height: inherit;\n /*display: inherit;*/\n white-space: inherit;\n text-align: inherit;\n padding: inherit;\n}\n\n.planet {\n background-color: #5cb85c;\n}\n\n.old-planet {\n background-color: #b3d4fc;\n}\n\n.tobago-sheet-cell-markup-sun {\n background-color: #fffacd;\n}\n\n.tobago-sheet-cell-markup-planet {\n background-color: #ffb6c1;\n}\n\n.tobago-sheet-cell-markup-moon {\n background-color: #6495ed;\n}\n\n.tobago-sheet-cell-markup-lightgreen {\n background-color: #ddffdd;\n}\n\n.tobago-sheet-cell-markup-lightred {\n background-color: #ffdddd;\n}\n\n.testframe-wrapper {\n display: inline-block;\n border: 1px solid;\n text-align: center;\n margin-bottom: 2px;\n}\n"
+ ],
+ "names": [],
+ "mappings": "AAAA;;;;;;;;;;;;;;;GAeG;AAEH,AAAA,WAAW,CAAC;EACV,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,wBAAwB;CACjD;;AAED,AAAA,cAAc,CAAC;EACb,gBAAgB,EAAE,OAAO;CAC1B;;AAED,AAAA,iBAAiB,CAAC,cAAc,CAAC;EAC/B,MAAM,EAAE,iBAAiB;CAC1B;;AAED,AAAA,KAAK,CAAC;EACJ,gBAAgB,EAAE,OAAO;CAC1B;;AAED,AAAA,oBAAoB,CAAC;EACnB,MAAM,EAAE,KAAK;EACb,MAAM,EAAE,iBAAiB;EACzB,aAAa,EAAE,MAAM;CACtB;;AAED,AAAA,cAAc,CAAC;EACb,SAAS,EAAE,GAAG;CACf;;AAED;;;;EAIE;AAEF,2FAA2F;AAC3F,AAAA,gBAAgB,CAAC,MAAM,AAAA,IAAI,CAAC;EAC1B,WAAW,EAAE,OAAO;EACpB,SAAS,EAAE,OAAO;EAClB,WAAW,EAAE,OAAO;EACpB,qBAAqB;EACrB,WAAW,EAAE,OAAO;EACpB,UAAU,EAAE,OAAO;EACnB,OAAO,EAAE,OAAO;CACjB;;AAED,AAAA,OAAO,CAAC;EACN,gBAAgB,EAAE,OAAO;CAC1B;;AAED,AAAA,WAAW,CAAC;EACV,gBAAgB,EAAE,OAAO;CAC1B;;AAED,AAAA,6BAA6B,CAAC;EAC5B,gBAAgB,EAAE,OAAO;CAC1B;;AAED,AAAA,gCAAgC,CAAC;EAC/B,gBAAgB,EAAE,OAAO;CAC1B;;AAED,AAAA,8BAA8B,CAAC;EAC7B,gBAAgB,EAAE,OAAO;CAC1B;;AAED,AAAA,oCAAoC,CAAC;EACnC,gBAAgB,EAAE,OAAO;CAC1B;;AAED,AAAA,kCAAkC,CAAC;EACjC,gBAAgB,EAAE,OAAO;CAC1B;;AAED,AAAA,kBAAkB,CAAC;EACjB,OAAO,EAAE,YAAY;EACrB,MAAM,EAAE,SAAS;EACjB,UAAU,EAAE,MAAM;EAClB,aAAa,EAAE,GAAG;CACnB"
+}
\ No newline at end of file
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/css/demo.min.css b/tobago-example/tobago-example-demo/src/main/webapp/css/demo.min.css
new file mode 100644
index 0000000..31f4fb8
--- /dev/null
+++ b/tobago-example/tobago-example-demo/src/main/webapp/css/demo.min.css
@@ -0,0 +1,2 @@
+.box-shadow{box-shadow:0 0 5px 5px rgba(200,200,200,.5)}.demo-selected{background-color:#fdf}#demo-view-source .demo-selected{border:1px solid #ccc}.blue{background-color:#2aabff}.demo-data-attribute{height:100px;border:1px solid #000;border-radius:.25rem}demo-highlight{font-size:75%}.language-markup .token.tag{font-weight:inherit;font-size:inherit;line-height:inherit;white-space:inherit;text-align:inherit;padding:inherit}.planet{background-color:#5cb85c}.old-planet{background-color:#b3d4fc}.tobago-sheet-cell-markup-sun{background-color:#fffacd}.tobago-sheet-cell-markup-planet{background-color:#ffb6c1}.tobago-sheet-cell-markup-moon{background-color:#6495ed}.tobago-sheet-cell-markup-lightgreen{background-color:#dfd}.tobago-sheet-cell-markup-lightred{background-color:#fdd}.testframe-wrapper{display:inline-block;border:1px solid;text-align:center;margin-bottom:2px}
+/*# sourceMappingURL=demo.min.css.map */
\ No newline at end of file
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/css/demo.min.css.map b/tobago-example/tobago-example-demo/src/main/webapp/css/demo.min.css.map
new file mode 100644
index 0000000..c0dbab4
--- /dev/null
+++ b/tobago-example/tobago-example-demo/src/main/webapp/css/demo.min.css.map
@@ -0,0 +1 @@
+{"version":3,"sources":["../../../../npm/scss/demo.scss"],"names":[],"mappings":"AAiBA,YACE,WAAY,EAAE,EAAE,IAAI,IAAI,qBAG1B,eACE,iBAAkB,KAGF,iCAChB,OAAQ,IAAA,MAAA,KAGV,MACE,iBAAkB,QAGpB,qBACE,OAAQ,MACR,OAAQ,IAAA,MAAA,KACR,cAAe,OAGjB,eACE,UAAW,IAUU,4BACrB,YAAa,QACb,UAAW,QACX,YAAa,QAEb,YAAa,QACb,WAAY,QACZ,QAAS,QAGX,QACE,iBAAkB,QAGpB,YACE,iBAAkB,QAGpB,8BACE,iBAAkB,QAGpB,iCACE,iBAAkB,QAGpB,+BACE,iBAAkB,QAGpB,qCACE,iBAAkB,KAGpB,mCACE,iBAAkB,KAGpB,mBACE,QAAS,aACT,OAAQ,IAAA,MACR,WAAY,OACZ,cAAe","sourcesContent":["/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n.box-shadow {\n box-shadow: 0 0 5px 5px rgba(200, 200, 200, 0.5);\n}\n\n.demo-selected {\n background-color: #ffddff;\n}\n\n#demo-view-source .demo-selected {\n border: 1px solid #cccccc;\n}\n\n.blue {\n background-color: #2aabff;\n}\n\n.demo-data-attribute {\n height: 100px;\n border: 1px solid #000000;\n border-radius: .25rem;\n}\n\ndemo-highlight {\n font-size: 75%;\n}\n\n/* todo: should be switchable\n.comment {\n display: none;\n}\n*/\n\n/* Prism and Bootstrap both use \"tag\" as CSS class name. So we need to \"fix\" some stuff. */\n.language-markup .token.tag {\n font-weight: inherit;\n font-size: inherit;\n line-height: inherit;\n /*display: inherit;*/\n white-space: inherit;\n text-align: inherit;\n padding: inherit;\n}\n\n.planet {\n background-color: #5cb85c;\n}\n\n.old-planet {\n background-color: #b3d4fc;\n}\n\n.tobago-sheet-cell-markup-sun {\n background-color: #fffacd;\n}\n\n.tobago-sheet-cell-markup-planet {\n background-color: #ffb6c1;\n}\n\n.tobago-sheet-cell-markup-moon {\n background-color: #6495ed;\n}\n\n.tobago-sheet-cell-markup-lightgreen {\n background-color: #ddffdd;\n}\n\n.tobago-sheet-cell-markup-lightred {\n background-color: #ffdddd;\n}\n\n.testframe-wrapper {\n display: inline-block;\n border: 1px solid;\n text-align: center;\n margin-bottom: 2px;\n}\n"]}
\ No newline at end of file
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/js/demo-copy-to-clipboard.js b/tobago-example/tobago-example-demo/src/main/webapp/js/demo-copy-to-clipboard.js
new file mode 100644
index 0000000..69c44c4
--- /dev/null
+++ b/tobago-example/tobago-example-demo/src/main/webapp/js/demo-copy-to-clipboard.js
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+class DemoCopyToClipboard extends HTMLElement {
+ constructor() {
+ super();
+ }
+ connectedCallback() {
+ this.addEventListener("click", (event) => {
+ const sourceElement = document.getElementById(this.source);
+ if (window.getSelection) {
+ const selection = window.getSelection();
+ const range = document.createRange();
+ range.selectNodeContents(sourceElement);
+ selection.removeAllRanges();
+ selection.addRange(range);
+ }
+ else {
+ console.warn("Text select not possible: Unsupported browser.");
+ }
+ try {
+ const result = document.execCommand("copy");
+ console.debug("result: " + result);
+ }
+ catch (error) {
+ console.error("Copying text not possible");
+ }
+ });
+ }
+ get source() {
+ return this.getAttribute("source");
+ }
+ set source(name) {
+ this.setAttribute("source", name);
+ }
+}
+document.addEventListener("DOMContentLoaded", function (event) {
+ if (window.customElements.get("demo-copy-to-clipboard") == null) {
+ window.customElements.define("demo-copy-to-clipboard", DemoCopyToClipboard);
+ }
+});
+//# sourceMappingURL=demo-copy-to-clipboard.js.map
\ No newline at end of file
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/js/demo-copy-to-clipboard.js.map b/tobago-example/tobago-example-demo/src/main/webapp/js/demo-copy-to-clipboard.js.map
new file mode 100644
index 0000000..655c877
--- /dev/null
+++ b/tobago-example/tobago-example-demo/src/main/webapp/js/demo-copy-to-clipboard.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"demo-copy-to-clipboard.js","sourceRoot":"","sources":["../../../../npm/ts/demo-copy-to-clipboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,mBAAoB,SAAQ,WAAW;IAE3C;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAiB,EAAE,EAAE;YACnD,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAE3D,IAAI,MAAM,CAAC,YAAY,EAAE;gBACvB,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;gBACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACrC,KAAK,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;gBACxC,SAAS,CAAC,eAAe,EAAE,CAAC;gBAC5B,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aAC3B;iBAAM;gBACL,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;aAChE;YACD,IAAI;gBACF,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAC5C,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC;aACpC;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;aAC5C;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,MAAM,CAAC,IAAY;QACrB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;CAEF;AAED,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,UAAU,KAAY;IAClE,IAAI,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,wBAAwB,CAAC,IAAI,IAAI,EAAE;QAC/D,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,wBAAwB,EAAE,mBAAmB,CAAC,CAAC;KAC7E;AACH,CAAC,CAAC,CAAC"}
\ No newline at end of file