@tripod311/splash 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/dist/templateCache.d.ts.map +1 -1
- package/dist/templateCache.js +1 -1
- package/dist/templateCache.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -188,6 +188,7 @@ TemplateCache.registerDrop("chatMessage", `
|
|
|
188
188
|
|
|
189
189
|
**Creating a drop**
|
|
190
190
|
```ts
|
|
191
|
+
// second parameter is optional, use it when you want to fill drop with some content.
|
|
191
192
|
const drop = TemplateCache.createDrop("chatMessage", {
|
|
192
193
|
author: "Alice",
|
|
193
194
|
text: "<b>Hello!</b>"
|
|
@@ -208,6 +209,29 @@ export interface Drop {
|
|
|
208
209
|
}
|
|
209
210
|
```
|
|
210
211
|
|
|
212
|
+
### 4. Generic Components
|
|
213
|
+
|
|
214
|
+
Generic components are a middle ground between **drops** and **regular components**.
|
|
215
|
+
They are useful when you need something that behaves like a component (can be mounted into a slot, updated, unmounted), but is too simple to justify creating a separate `.ts` + `.html` pair.
|
|
216
|
+
|
|
217
|
+
A common use case is when you want to render either a real component or a simple piece of UI (like an error message) into the same slot. A drop alone cannot be mounted into a slot, but a generic component can wrap it.
|
|
218
|
+
|
|
219
|
+
**Example:**
|
|
220
|
+
```ts
|
|
221
|
+
const result = await someAsyncRequest();
|
|
222
|
+
|
|
223
|
+
if (!result.error) {
|
|
224
|
+
this.slots.content.push(new MyRegularComponent({}));
|
|
225
|
+
} else {
|
|
226
|
+
// Wrap a drop (or any HTML node) into a generic component
|
|
227
|
+
const errorDrop = TemplateCache.createDrop("errorMessage");
|
|
228
|
+
this.slots.content.push(Component.generic({ text: result.details }, errorDrop.node));
|
|
229
|
+
}
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
In this way, you can take drops or any ad-hoc HTML node created in code and treat it as a real component.
|
|
233
|
+
This keeps your slot API consistent — you always mount components, whether they are full, generic, or lightweight wrappers around static HTML.
|
|
234
|
+
|
|
211
235
|
---
|
|
212
236
|
|
|
213
237
|
### 4. Mounting & Unmounting
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateCache.d.ts","sourceRoot":"","sources":["../src/templateCache.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACpB,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CAClC;AAED,qBAAa,aAAa;IACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAmC;IACvD,OAAO,CAAC,MAAM,CAAC,SAAS,CAA4B;IAEpD,MAAM,CAAC,eAAe,CAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAYtE,MAAM,CAAC,WAAW,CAAE,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIvD,MAAM,CAAC,YAAY,CAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAWvD,MAAM,CAAC,UAAU,CAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"templateCache.d.ts","sourceRoot":"","sources":["../src/templateCache.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACpB,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CAClC;AAED,qBAAa,aAAa;IACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAmC;IACvD,OAAO,CAAC,MAAM,CAAC,SAAS,CAA4B;IAEpD,MAAM,CAAC,eAAe,CAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAYtE,MAAM,CAAC,WAAW,CAAE,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIvD,MAAM,CAAC,YAAY,CAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAWvD,MAAM,CAAC,UAAU,CAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,IAAI,GAAG,IAAI;IAejF,OAAO,CAAC,MAAM,CAAC,QAAQ;CAkDvB"}
|
package/dist/templateCache.js
CHANGED
|
@@ -23,7 +23,7 @@ export class TemplateCache {
|
|
|
23
23
|
const compiled = root.firstElementChild;
|
|
24
24
|
TemplateCache.drops[dropName] = compiled;
|
|
25
25
|
}
|
|
26
|
-
static createDrop(dropName, fill) {
|
|
26
|
+
static createDrop(dropName, fill = {}) {
|
|
27
27
|
if (TemplateCache.drops[dropName] === undefined)
|
|
28
28
|
return null;
|
|
29
29
|
const result = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateCache.js","sourceRoot":"","sources":["../src/templateCache.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,aAAa;IACjB,MAAM,CAAC,KAAK,GAAgC,EAAE,CAAC;IAC/C,MAAM,CAAC,SAAS,GAAyB,EAAE,CAAC;IAEpD,MAAM,CAAC,eAAe,CAAE,aAAqB,EAAE,QAAgB;QAC9D,IAAI,aAAa,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,qDAAqD,aAAa,EAAE,CAAC,CAAC;QACpF,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAyB,CAAC;QAChD,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC;QAClD,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,WAAW,CAAE,aAAqB;QACxC,OAAO,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IACxE,CAAC;IAED,MAAM,CAAC,YAAY,CAAE,QAAgB,EAAE,QAAgB;QACtD,IAAI,QAAQ,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC,iDAAiD,QAAQ,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAgC,CAAC;QACvD,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,UAAU,CAAE,QAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"templateCache.js","sourceRoot":"","sources":["../src/templateCache.ts"],"names":[],"mappings":"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"}
|