fix(core): update
This commit is contained in:
		| @@ -17,13 +17,13 @@ | ||||
|     "@gitzone/tsbundle": "^2.0.7", | ||||
|     "@gitzone/tstest": "^1.0.73", | ||||
|     "@pushrocks/tapbundle": "^5.0.4", | ||||
|     "@types/node": "^18.7.23" | ||||
|     "@types/node": "^18.7.23", | ||||
|     "why-is-node-running": "^2.2.2" | ||||
|   }, | ||||
|   "dependencies": { | ||||
|     "@designestate/dees-element": "^2.0.20", | ||||
|     "@happy-dom/global-registrator": "^6.0.4", | ||||
|     "@pushrocks/smartpromise": "^3.1.7", | ||||
|     "@types/strip-comments": "^2.0.1", | ||||
|     "lit": "^2.3.1" | ||||
|     "@pushrocks/smartpromise": "^3.1.7" | ||||
|   }, | ||||
|   "browserslist": [ | ||||
|     "last 1 chrome versions" | ||||
|   | ||||
							
								
								
									
										4665
									
								
								pnpm-lock.yaml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										4665
									
								
								pnpm-lock.yaml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -1,10 +1,11 @@ | ||||
| import log from 'why-is-node-running'; | ||||
| import { expect, expectAsync, tap } from '@pushrocks/tapbundle'; | ||||
| import * as smartntml from '../ts/index.js'; | ||||
|  | ||||
| let testSmartntmlInstance: smartntml.Smartntml; | ||||
|  | ||||
| tap.test('first test', async () => { | ||||
|   testSmartntmlInstance = await smartntml.Smartntml.createAndInit(); | ||||
|   testSmartntmlInstance = await smartntml.Smartntml.create(); | ||||
| }); | ||||
|  | ||||
| tap.test('should render a string', async () => { | ||||
| @@ -17,4 +18,9 @@ tap.test('should render a string', async () => { | ||||
|   console.log(stringResult); | ||||
| }); | ||||
|  | ||||
| tap.test('should log', async () => { | ||||
|   log(); | ||||
|   setTimeout(()=> process.exit(0), 0); | ||||
| }) | ||||
|  | ||||
| tap.start(); | ||||
|   | ||||
| @@ -3,6 +3,6 @@ | ||||
|  */ | ||||
| export const commitinfo = { | ||||
|   name: '@pushrocks/smartntml', | ||||
|   version: '1.0.11', | ||||
|   version: '1.0.12', | ||||
|   description: 'lit-html for the backend' | ||||
| } | ||||
|   | ||||
							
								
								
									
										29
									
								
								ts/index.ts
									
									
									
									
									
								
							
							
						
						
									
										29
									
								
								ts/index.ts
									
									
									
									
									
								
							| @@ -1,46 +1,33 @@ | ||||
| import * as plugins from './smartntml.plugins.js'; | ||||
|  | ||||
| import type * as litTypes from 'lit'; | ||||
| import { unsafeHTML } from 'lit/directives/unsafe-html.js'; | ||||
| export type { TemplateResult } from 'lit'; | ||||
| import * as deesElement from '@designestate/dees-element'; | ||||
|  | ||||
| export class Smartntml { | ||||
|   // STATIC | ||||
|   public static async createAndInit() { | ||||
|   public static async create() { | ||||
|     const smartntml = new Smartntml(); | ||||
|     await smartntml.init(); | ||||
|     return smartntml; | ||||
|   } | ||||
|  | ||||
|   private static smartntmlSingletonDeferred: plugins.smartpromise.Deferred<Smartntml>; | ||||
|   public static async createAndInitSingleton() { | ||||
|   public static async createSingleton() { | ||||
|     if (this.smartntmlSingletonDeferred) { | ||||
|       return this.smartntmlSingletonDeferred.promise; | ||||
|     } | ||||
|     this.smartntmlSingletonDeferred = plugins.smartpromise.defer(); | ||||
|     const smartntmlInstance = await this.createAndInit(); | ||||
|     const smartntmlInstance = await this.create(); | ||||
|     this.smartntmlSingletonDeferred.resolve(smartntmlInstance); | ||||
|     return this.smartntmlSingletonDeferred.promise; | ||||
|   } | ||||
|  | ||||
|   // INSTANCE | ||||
|   private render: typeof litTypes.render; | ||||
|   public html: typeof litTypes.html; | ||||
|   public unsafeHTML: typeof unsafeHTML; | ||||
|   private render = deesElement.render; | ||||
|   public html = deesElement.html; | ||||
|   public unsafeHTML = deesElement.unsafeHTML; | ||||
|  | ||||
|   constructor() { | ||||
|     this.init(); | ||||
|   } | ||||
|  | ||||
|   public async init() { | ||||
|     const lit = await import('lit'); | ||||
|     const litUnsafeHtmlDirective = await import('lit/directives/unsafe-html.js'); | ||||
|     this.render = lit.render; | ||||
|     this.html = lit.html; | ||||
|     this.unsafeHTML = litUnsafeHtmlDirective.unsafeHTML; | ||||
|   } | ||||
|  | ||||
|   public async renderTemplateResult(templateResult: litTypes.TemplateResult, stripCommentsArg = true) { | ||||
|   public async renderTemplateResult(templateResult: deesElement.TemplateResult, stripCommentsArg = true) { | ||||
|     const element = document.createElement('div'); | ||||
|     this.render(templateResult, element); | ||||
|     let stringResult = element.innerHTML; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user