@pacem/pacem 1.0.0-abel

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.
Files changed (67) hide show
  1. package/LICENSE +191 -0
  2. package/NOTICE +4 -0
  3. package/dist/browser/pacem-2d.js +2755 -0
  4. package/dist/browser/pacem-2d.js.map +6 -0
  5. package/dist/browser/pacem-2d.min.js +7 -0
  6. package/dist/browser/pacem-2d.min.js.map +6 -0
  7. package/dist/browser/pacem-3d.js +7723 -0
  8. package/dist/browser/pacem-3d.js.map +6 -0
  9. package/dist/browser/pacem-3d.min.js +7 -0
  10. package/dist/browser/pacem-3d.min.js.map +6 -0
  11. package/dist/browser/pacem-charts.js +1628 -0
  12. package/dist/browser/pacem-charts.js.map +6 -0
  13. package/dist/browser/pacem-charts.min.js +7 -0
  14. package/dist/browser/pacem-charts.min.js.map +6 -0
  15. package/dist/browser/pacem-cms.js +2220 -0
  16. package/dist/browser/pacem-cms.js.map +6 -0
  17. package/dist/browser/pacem-cms.min.js +7 -0
  18. package/dist/browser/pacem-cms.min.js.map +6 -0
  19. package/dist/browser/pacem-core.js +9104 -0
  20. package/dist/browser/pacem-core.js.map +6 -0
  21. package/dist/browser/pacem-core.min.js +7 -0
  22. package/dist/browser/pacem-core.min.js.map +6 -0
  23. package/dist/browser/pacem-foundation.js +2138 -0
  24. package/dist/browser/pacem-foundation.js.map +6 -0
  25. package/dist/browser/pacem-foundation.min.js +7 -0
  26. package/dist/browser/pacem-foundation.min.js.map +6 -0
  27. package/dist/browser/pacem-fx.js +870 -0
  28. package/dist/browser/pacem-fx.js.map +6 -0
  29. package/dist/browser/pacem-fx.min.js +7 -0
  30. package/dist/browser/pacem-fx.min.js.map +6 -0
  31. package/dist/browser/pacem-logging.js +175 -0
  32. package/dist/browser/pacem-logging.js.map +6 -0
  33. package/dist/browser/pacem-logging.min.js +7 -0
  34. package/dist/browser/pacem-logging.min.js.map +6 -0
  35. package/dist/browser/pacem-maps.js +3642 -0
  36. package/dist/browser/pacem-maps.js.map +6 -0
  37. package/dist/browser/pacem-maps.min.js +7 -0
  38. package/dist/browser/pacem-maps.min.js.map +6 -0
  39. package/dist/browser/pacem-media.js +284 -0
  40. package/dist/browser/pacem-media.js.map +6 -0
  41. package/dist/browser/pacem-media.min.js +7 -0
  42. package/dist/browser/pacem-media.min.js.map +6 -0
  43. package/dist/browser/pacem-networking.js +434 -0
  44. package/dist/browser/pacem-networking.js.map +6 -0
  45. package/dist/browser/pacem-networking.min.js +7 -0
  46. package/dist/browser/pacem-networking.min.js.map +6 -0
  47. package/dist/browser/pacem-numerical.js +2627 -0
  48. package/dist/browser/pacem-numerical.js.map +6 -0
  49. package/dist/browser/pacem-numerical.min.js +7 -0
  50. package/dist/browser/pacem-numerical.min.js.map +6 -0
  51. package/dist/browser/pacem-plus.js +2373 -0
  52. package/dist/browser/pacem-plus.js.map +6 -0
  53. package/dist/browser/pacem-plus.min.js +7 -0
  54. package/dist/browser/pacem-plus.min.js.map +6 -0
  55. package/dist/browser/pacem-scaffolding.js +10435 -0
  56. package/dist/browser/pacem-scaffolding.js.map +6 -0
  57. package/dist/browser/pacem-scaffolding.min.js +7 -0
  58. package/dist/browser/pacem-scaffolding.min.js.map +6 -0
  59. package/dist/browser/pacem-ui.js +6348 -0
  60. package/dist/browser/pacem-ui.js.map +6 -0
  61. package/dist/browser/pacem-ui.min.js +7 -0
  62. package/dist/browser/pacem-ui.min.js.map +6 -0
  63. package/dist/bundle/pacem.min.mjs +997 -0
  64. package/dist/bundle/pacem.mjs +47067 -0
  65. package/dist/bundle/pacem.mjs.map +12 -0
  66. package/dist/typings/index.d.ts +9757 -0
  67. package/package.json +130 -0
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @pacem/pacem v1.0.0-abel (https://js.pacem.it)
3
+ * Copyright 2026 Pacem (https://pacem.it)
4
+ * Licensed under Apache-2.0
5
+ */
6
+ !function(e,t){"use strict";var r=function(e,t,r,o){var n,a=arguments.length,c=a<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)c=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(c=(a<3?n(c):a>3?n(t,r,c):n(t,r))||c);return a>3&&c&&Object.defineProperty(t,r,c),c};const o={current:0,count:0,average:0,max:Number.MIN_VALUE,min:Number.MAX_VALUE};class n extends t.PacemEventTarget{constructor(){super(),this.data=o}propertyChangedCallback(e,t,r,o){super.propertyChangedCallback(e,t,r,o),"entry"===e&&this._update(r).then(e=>this.data=e)}_update(e){return t.Utils.fromResultAsync(()=>{const t=this.data,r=Math.min(e,t.min),o=Math.max(e,t.max),n=t.count+1;return{count:n,min:r,max:o,average:(t.count*t.average+e)/n,current:e}})}reset(){this.data=o}}r([t.Watch({converter:t.PropertyConverters.Json})],n.prototype,"data",void 0),r([t.Watch({emit:!1,converter:t.PropertyConverters.Number})],n.prototype,"entry",void 0),r([t.Concurrent()],n.prototype,"_update",null);var a=function(e,t,r,o){var n,a=arguments.length,c=a<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)c=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(c=(a<3?n(c):a>3?n(t,r,c):n(t,r))||c);return a>3&&c&&Object.defineProperty(t,r,c),c};const c={error:!0,info:!0,warn:!0};let s=class extends t.PacemEventTarget{constructor(){super(...arguments),this._config=c}propertyChangedCallback(e,r,o,n){super.propertyChangedCallback(e,r,o,n),"configuration"===e&&(this._config=t.Utils.extend({},c,o??{}))}log(e,t,r){try{this._log(e,t,r)}catch(e){}}_log(e,r,o){if(!this.disabled&&!0===this._config[e]){o!==this._category&&(t.Utils.isNullOrEmpty(this._category)||console.groupEnd(),t.Utils.isNullOrEmpty(o)||console.group(o),this._category=o);var n=e=>{};switch(e){case t.Logging.LogLevel.Debug:n=console.debug;break;case t.Logging.LogLevel.Error:n=console.error;break;case t.Logging.LogLevel.Info:n=console.info;break;case t.Logging.LogLevel.Trace:n=console.trace;break;case t.Logging.LogLevel.Warn:n=console.warn;break;case t.Logging.LogLevel.Log:n=console.log}n((new Date).toISOString()+": "+r)}}};a([t.Watch({emit:!1,converter:t.PropertyConverters.Json})],s.prototype,"configuration",void 0),s=a([t.CustomElement({tagName:t.P+"-console"})],s);var l=function(e,t,r,o){var n,a=arguments.length,c=a<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)c=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(c=(a<3?n(c):a>3?n(t,r,c):n(t,r))||c);return a>3&&c&&Object.defineProperty(t,r,c),c};let i=class extends n{constructor(){super()}_start(e=Date.now()){this._handle=requestAnimationFrame(()=>{const t=Date.now(),r=t-e;this.entry=Math.min(60,1e3/r),this._start(t)})}viewActivatedCallback(){super.viewActivatedCallback(),this._start()}disconnectedCallback(){cancelAnimationFrame(this._handle),super.disconnectedCallback()}};i=l([t.CustomElement({tagName:t.P+"-fps"})],i);var g=Object.freeze({__proto__:null,get PacemConsoleElement(){return s},get PacemFpsElement(){return i},PacemTrackerElement:n}),u=Object.freeze({__proto__:null,Logging:g}),p=Object.freeze({__proto__:null,Components:u});e.DeepMerger.merge(p)}(Pacem,Pacem);
7
+ //# sourceMappingURL=pacem-logging.min.js.map
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @pacem/pacem v1.0.0-abel (https://js.pacem.it)
3
+ * Copyright 2026 Pacem (https://pacem.it)
4
+ * Licensed under Apache-2.0
5
+ */
6
+ {"version":3,"file":"pacem-logging.min.js","sources":["../esm/types.js","../esm/console.js","../esm/fps.js","../esm/index-iife.js"],"sourcesContent":["var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { PacemEventTarget, Watch, PropertyConverters, Utils, Concurrent } from '@pacem/pacem-core';\nconst DEFAULT_DATA = { current: 0, count: 0, average: 0, max: Number.MIN_VALUE, min: Number.MAX_VALUE };\nexport class PacemTrackerElement extends PacemEventTarget {\n constructor() {\n super();\n this.data = DEFAULT_DATA;\n }\n propertyChangedCallback(name, old, val, first) {\n super.propertyChangedCallback(name, old, val, first);\n if (name === 'entry')\n this._update(val).then(t => this.data = t);\n }\n _update(ne) {\n //var deferred = DeferPromise.defer<TrackingData>();\n let fn = () => {\n const data = this.data, min = Math.min(ne, data.min), max = Math.max(ne, data.max), count = data.count + 1, average = (data.count * data.average + ne) / count;\n return { count: count, min: min, max: max, average: average, current: ne };\n };\n return Utils.fromResultAsync(fn);\n //return Utils.fromResult/*Async*/(fn());\n }\n reset() {\n this.data = DEFAULT_DATA;\n }\n}\n__decorate([\n Watch({ converter: PropertyConverters.Json })\n], PacemTrackerElement.prototype, \"data\", void 0);\n__decorate([\n Watch({ emit: false, converter: PropertyConverters.Number })\n], PacemTrackerElement.prototype, \"entry\", void 0);\n__decorate([\n Concurrent()\n], PacemTrackerElement.prototype, \"_update\", null);\n//}\n","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { PacemEventTarget, Watch, PropertyConverters, Utils, CustomElement, Logging, P } from '@pacem/pacem-core';\nconst DEFAULT_CONFIG = {\n error: true, info: true, warn: true\n};\nlet PacemConsoleElement = class PacemConsoleElement extends PacemEventTarget {\n constructor() {\n super(...arguments);\n this._config = DEFAULT_CONFIG;\n }\n propertyChangedCallback(name, old, val, first) {\n super.propertyChangedCallback(name, old, val, first);\n if (name === 'configuration') {\n this._config = Utils.extend({}, DEFAULT_CONFIG, val ?? {});\n }\n }\n log(level, message, category) {\n try {\n /* console enabled? better check: you might find cumbersome behaviors on IE/Edge when F12 tools aren't available! */\n this._log(level, message, category);\n }\n catch (e) { }\n }\n _log(level, message, category) {\n // enabled?\n if (!this.disabled && this._config[level] === true) {\n if (category !== this._category) {\n if (!Utils.isNullOrEmpty(this._category))\n console.groupEnd();\n if (!Utils.isNullOrEmpty(category)) {\n console.group(category);\n }\n this._category = category;\n }\n var fn = (m) => { };\n switch (level) {\n case Logging.LogLevel.Debug:\n fn = console.debug;\n break;\n case Logging.LogLevel.Error:\n fn = console.error;\n break;\n case Logging.LogLevel.Info:\n fn = console.info;\n break;\n case Logging.LogLevel.Trace:\n fn = console.trace;\n break;\n case Logging.LogLevel.Warn:\n fn = console.warn;\n break;\n case Logging.LogLevel.Log:\n fn = console.log;\n break;\n }\n fn(new Date().toISOString() + ': ' + message);\n }\n }\n};\n__decorate([\n Watch({ emit: false, converter: PropertyConverters.Json })\n], PacemConsoleElement.prototype, \"configuration\", void 0);\nPacemConsoleElement = __decorate([\n CustomElement({ tagName: P + '-console' })\n], PacemConsoleElement);\nexport { PacemConsoleElement };\n","var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { CustomElement, P } from '@pacem/pacem-core';\nimport { PacemTrackerElement } from './types';\n//namespace Pacem.Components.Logging {\nlet PacemFpsElement = class PacemFpsElement extends PacemTrackerElement {\n constructor() {\n super();\n }\n _start(t0 = Date.now()) {\n this._handle = requestAnimationFrame(() => {\n const t1 = Date.now(), msecs = t1 - t0;\n // sets new entry\n this.entry = Math.min(60, 1000.0 / msecs);\n this._start(t1);\n });\n }\n viewActivatedCallback() {\n super.viewActivatedCallback();\n this._start();\n }\n disconnectedCallback() {\n cancelAnimationFrame(this._handle);\n super.disconnectedCallback();\n }\n};\nPacemFpsElement = __decorate([\n CustomElement({\n tagName: P + '-fps'\n })\n], PacemFpsElement);\nexport { PacemFpsElement };\n//}\n","import { DeepMerger } from '@pacem/pacem-foundation';\nimport * as Output from './index';\nDeepMerger.merge(Output);\n"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","DEFAULT_DATA","current","count","average","max","Number","MIN_VALUE","min","MAX_VALUE","PacemTrackerElement","PacemEventTarget","constructor","super","this","data","propertyChangedCallback","name","old","val","first","_update","then","t","ne","Utils","fromResultAsync","Math","reset","Watch","converter","PropertyConverters","Json","prototype","emit","Concurrent","DEFAULT_CONFIG","error","info","warn","PacemConsoleElement","_config","extend","log","level","message","category","_log","e","disabled","_category","isNullOrEmpty","console","groupEnd","group","fn","m","Logging","LogLevel","Debug","debug","Error","Info","Trace","trace","Warn","Log","Date","toISOString","CustomElement","tagName","P","PacemFpsElement","_start","t0","now","_handle","requestAnimationFrame","t1","msecs","entry","viewActivatedCallback","disconnectedCallback","cancelAnimationFrame","DeepMerger","merge","Output"],"mappings":"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"}