@toclocoinc/lattice-grid 1.80.0 → 1.81.0
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/CHANGELOG.md +6 -0
- package/README.md +1 -1
- package/angular/package.json +1 -1
- package/docs/API.html +4 -4
- package/docs/THEMING.md +6 -3
- package/docs/api/adapters.html +1 -1
- package/docs/api/ai.html +1 -1
- package/docs/api/alarms.html +1 -1
- package/docs/api/charts.html +1 -1
- package/docs/api/dashboard.html +1 -1
- package/docs/api/data-router.html +1 -1
- package/docs/api/deckgl.html +1 -1
- package/docs/api/gantt.html +1 -1
- package/docs/api/geometry.html +1 -1
- package/docs/api/grid.html +2 -2
- package/docs/api/index.html +1 -1
- package/docs/api/kanban.html +1 -1
- package/docs/api/kpi.html +1 -1
- package/docs/api/layout.html +1 -1
- package/docs/api/leaflet.html +1 -1
- package/docs/api/list.html +1 -1
- package/docs/api/mock-socket.html +1 -1
- package/docs/api/presets.html +1 -1
- package/docs/api/tabs.html +1 -1
- package/docs/api/types.html +1 -1
- package/docs/api-detail.html +4 -4
- package/docs/warnings.json +1 -1
- package/lattice-grid.d.ts +1 -1
- package/lattice-grid.esm.min.js +3 -3
- package/lattice-grid.min.cjs +3 -3
- package/lattice-grid.min.css +1 -1
- package/lattice-grid.min.js +3 -3
- package/modules/ai.d.ts +1 -1
- package/modules/ai.esm.min.js +2 -2
- package/modules/ai.min.cjs +2 -2
- package/modules/ai.min.js +2 -2
- package/modules/alarms.d.ts +1 -1
- package/modules/alarms.esm.min.js +2 -2
- package/modules/alarms.min.cjs +2 -2
- package/modules/alarms.min.js +2 -2
- package/modules/angular.d.ts +1 -1
- package/modules/angular.esm.min.js +2 -2
- package/modules/angular.min.cjs +2 -2
- package/modules/angular.min.js +2 -2
- package/modules/chart-alluvial.d.ts +1 -1
- package/modules/chart-alluvial.esm.min.js +1 -1
- package/modules/chart-alluvial.min.cjs +1 -1
- package/modules/chart-alluvial.min.js +1 -1
- package/modules/chart-arc.d.ts +1 -1
- package/modules/chart-arc.esm.min.js +1 -1
- package/modules/chart-arc.min.cjs +1 -1
- package/modules/chart-arc.min.js +1 -1
- package/modules/chart-bubblemap.d.ts +1 -1
- package/modules/chart-bubblemap.esm.min.js +1 -1
- package/modules/chart-bubblemap.min.cjs +1 -1
- package/modules/chart-bubblemap.min.js +1 -1
- package/modules/chart-bump.d.ts +1 -1
- package/modules/chart-bump.esm.min.js +1 -1
- package/modules/chart-bump.min.cjs +1 -1
- package/modules/chart-bump.min.js +1 -1
- package/modules/chart-calendar.d.ts +1 -1
- package/modules/chart-calendar.esm.min.js +1 -1
- package/modules/chart-calendar.min.cjs +1 -1
- package/modules/chart-calendar.min.js +1 -1
- package/modules/chart-choropleth.d.ts +1 -1
- package/modules/chart-choropleth.esm.min.js +1 -1
- package/modules/chart-choropleth.min.cjs +1 -1
- package/modules/chart-choropleth.min.js +1 -1
- package/modules/chart-decomposition.d.ts +1 -1
- package/modules/chart-decomposition.esm.min.js +1 -1
- package/modules/chart-decomposition.min.cjs +1 -1
- package/modules/chart-decomposition.min.js +1 -1
- package/modules/chart-diverging.d.ts +1 -1
- package/modules/chart-diverging.esm.min.js +1 -1
- package/modules/chart-diverging.min.cjs +1 -1
- package/modules/chart-diverging.min.js +1 -1
- package/modules/chart-dumbbell.d.ts +1 -1
- package/modules/chart-dumbbell.esm.min.js +1 -1
- package/modules/chart-dumbbell.min.cjs +1 -1
- package/modules/chart-dumbbell.min.js +1 -1
- package/modules/chart-fan.d.ts +1 -1
- package/modules/chart-fan.esm.min.js +1 -1
- package/modules/chart-fan.min.cjs +1 -1
- package/modules/chart-fan.min.js +1 -1
- package/modules/chart-hexbin.d.ts +1 -1
- package/modules/chart-hexbin.esm.min.js +1 -1
- package/modules/chart-hexbin.min.cjs +1 -1
- package/modules/chart-hexbin.min.js +1 -1
- package/modules/chart-hexmap.d.ts +1 -1
- package/modules/chart-hexmap.esm.min.js +1 -1
- package/modules/chart-hexmap.min.cjs +1 -1
- package/modules/chart-hexmap.min.js +1 -1
- package/modules/chart-icicle.d.ts +1 -1
- package/modules/chart-icicle.esm.min.js +1 -1
- package/modules/chart-icicle.min.cjs +1 -1
- package/modules/chart-icicle.min.js +1 -1
- package/modules/chart-markermap.d.ts +1 -1
- package/modules/chart-markermap.esm.min.js +1 -1
- package/modules/chart-markermap.min.cjs +1 -1
- package/modules/chart-markermap.min.js +1 -1
- package/modules/chart-parallel.d.ts +1 -1
- package/modules/chart-parallel.esm.min.js +1 -1
- package/modules/chart-parallel.min.cjs +1 -1
- package/modules/chart-parallel.min.js +1 -1
- package/modules/chart-ridgeline.d.ts +1 -1
- package/modules/chart-ridgeline.esm.min.js +1 -1
- package/modules/chart-ridgeline.min.cjs +1 -1
- package/modules/chart-ridgeline.min.js +1 -1
- package/modules/chart-roc.d.ts +1 -1
- package/modules/chart-roc.esm.min.js +1 -1
- package/modules/chart-roc.min.cjs +1 -1
- package/modules/chart-roc.min.js +1 -1
- package/modules/chart-slope.d.ts +1 -1
- package/modules/chart-slope.esm.min.js +1 -1
- package/modules/chart-slope.min.cjs +1 -1
- package/modules/chart-slope.min.js +1 -1
- package/modules/chart-splom.d.ts +1 -1
- package/modules/chart-splom.esm.min.js +1 -1
- package/modules/chart-splom.min.cjs +1 -1
- package/modules/chart-splom.min.js +1 -1
- package/modules/chart-waffle.d.ts +1 -1
- package/modules/chart-waffle.esm.min.js +1 -1
- package/modules/chart-waffle.min.cjs +1 -1
- package/modules/chart-waffle.min.js +1 -1
- package/modules/charts.d.ts +1 -1
- package/modules/charts.esm.min.js +2 -2
- package/modules/charts.min.cjs +2 -2
- package/modules/charts.min.js +2 -2
- package/modules/dashboard.d.ts +1 -1
- package/modules/dashboard.esm.min.js +2 -2
- package/modules/dashboard.min.cjs +2 -2
- package/modules/dashboard.min.js +2 -2
- package/modules/data-router.d.ts +1 -1
- package/modules/data-router.esm.min.js +2 -2
- package/modules/data-router.min.cjs +2 -2
- package/modules/data-router.min.js +2 -2
- package/modules/deckgl.d.ts +1 -1
- package/modules/deckgl.esm.min.js +2 -2
- package/modules/deckgl.min.cjs +2 -2
- package/modules/deckgl.min.js +2 -2
- package/modules/devtools.d.ts +1 -1
- package/modules/devtools.esm.min.js +1 -1
- package/modules/devtools.min.cjs +1 -1
- package/modules/devtools.min.js +1 -1
- package/modules/dhtmlx-compat.d.ts +1 -1
- package/modules/dhtmlx-compat.esm.min.js +2 -2
- package/modules/dhtmlx-compat.min.cjs +2 -2
- package/modules/dhtmlx-compat.min.js +2 -2
- package/modules/gantt.d.ts +1 -1
- package/modules/gantt.esm.min.js +2 -2
- package/modules/gantt.min.cjs +2 -2
- package/modules/gantt.min.js +2 -2
- package/modules/geo-europe-nuts.d.ts +1 -1
- package/modules/geo-europe-nuts.esm.min.js +1 -1
- package/modules/geo-europe-nuts.min.cjs +1 -1
- package/modules/geo-europe-nuts.min.js +1 -1
- package/modules/geo-uk.d.ts +1 -1
- package/modules/geo-uk.esm.min.js +1 -1
- package/modules/geo-uk.min.cjs +1 -1
- package/modules/geo-uk.min.js +1 -1
- package/modules/geo-us-states.d.ts +1 -1
- package/modules/geo-us-states.esm.min.js +1 -1
- package/modules/geo-us-states.min.cjs +1 -1
- package/modules/geo-us-states.min.js +1 -1
- package/modules/geo-world-110m.d.ts +1 -1
- package/modules/geo-world-110m.esm.min.js +1 -1
- package/modules/geo-world-110m.min.cjs +1 -1
- package/modules/geo-world-110m.min.js +1 -1
- package/modules/geo-world-50m.d.ts +1 -1
- package/modules/geo-world-50m.esm.min.js +1 -1
- package/modules/geo-world-50m.min.cjs +1 -1
- package/modules/geo-world-50m.min.js +1 -1
- package/modules/geometry.d.ts +1 -1
- package/modules/geometry.esm.min.js +2 -2
- package/modules/geometry.min.cjs +2 -2
- package/modules/geometry.min.js +2 -2
- package/modules/htmx.d.ts +1 -1
- package/modules/htmx.esm.min.js +3 -3
- package/modules/htmx.min.cjs +3 -3
- package/modules/htmx.min.js +3 -3
- package/modules/kanban.d.ts +1 -1
- package/modules/kanban.esm.min.js +2 -2
- package/modules/kanban.min.cjs +2 -2
- package/modules/kanban.min.js +2 -2
- package/modules/kpi.d.ts +1 -1
- package/modules/kpi.esm.min.js +2 -2
- package/modules/kpi.min.cjs +2 -2
- package/modules/kpi.min.js +2 -2
- package/modules/layout.d.ts +1 -1
- package/modules/layout.esm.min.js +2 -2
- package/modules/layout.min.cjs +2 -2
- package/modules/layout.min.js +2 -2
- package/modules/leaflet.d.ts +1 -1
- package/modules/leaflet.esm.min.js +2 -2
- package/modules/leaflet.min.cjs +2 -2
- package/modules/leaflet.min.js +2 -2
- package/modules/list.d.ts +1 -1
- package/modules/list.esm.min.js +2 -2
- package/modules/list.min.cjs +2 -2
- package/modules/list.min.js +2 -2
- package/modules/mock-socket.d.ts +1 -1
- package/modules/mock-socket.esm.min.js +1 -1
- package/modules/mock-socket.min.cjs +1 -1
- package/modules/mock-socket.min.js +1 -1
- package/modules/presets/antd5.css +23 -0
- package/modules/presets/bootstrap5.css +46 -5
- package/modules/presets/fluent2.css +31 -4
- package/modules/presets/material3.css +53 -5
- package/modules/presets.d.ts +1 -1
- package/modules/presets.esm.min.js +2 -2
- package/modules/presets.min.cjs +2 -2
- package/modules/presets.min.js +2 -2
- package/modules/react.d.ts +1 -1
- package/modules/react.esm.min.js +2 -2
- package/modules/react.min.cjs +2 -2
- package/modules/react.min.js +2 -2
- package/modules/svelte.d.ts +1 -1
- package/modules/svelte.esm.min.js +2 -2
- package/modules/svelte.min.cjs +2 -2
- package/modules/svelte.min.js +2 -2
- package/modules/tabs.d.ts +1 -1
- package/modules/tabs.esm.min.js +2 -2
- package/modules/tabs.min.cjs +2 -2
- package/modules/tabs.min.js +2 -2
- package/modules/vue.d.ts +1 -1
- package/modules/vue.esm.min.js +2 -2
- package/modules/vue.min.cjs +2 -2
- package/modules/vue.min.js +2 -2
- package/modules/webcomponent.d.ts +1 -1
- package/modules/webcomponent.esm.min.js +3 -3
- package/modules/webcomponent.min.cjs +3 -3
- package/modules/webcomponent.min.js +3 -3
- package/package.json +1 -1
package/modules/vue.min.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.81.0, vue module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
6
|
-
(function(je){"use strict";var we=Object.create(null),Oe=Object.create(null);function ce(c,U){we[c]=U}function ve(c){var U=Oe[c];if(U)return U;var Q=Object.create(null);Oe[c]=Q;var X=we[c];if(!X)throw new Error("[lattice] missing module: "+c);return X(Q,ve),Q}ce("packages/core/src/internal/util.js",function(c,U){"use strict";Object.defineProperty(c,"VERSION",{enumerable:!0,get:function(){return C}}),Object.defineProperty(c,"reportedWarnings",{enumerable:!0,get:function(){return i}}),Object.defineProperty(c,"warnOnce",{enumerable:!0,get:function(){return G}}),Object.defineProperty(c,"infoOnce",{enumerable:!0,get:function(){return L}}),Object.defineProperty(c,"resetWarnings",{enumerable:!0,get:function(){return j}}),Object.defineProperty(c,"fail",{enumerable:!0,get:function(){return T}}),Object.defineProperty(c,"invariant",{enumerable:!0,get:function(){return $}}),Object.defineProperty(c,"DEV",{enumerable:!0,get:function(){return B}}),Object.defineProperty(c,"isObject",{enumerable:!0,get:function(){return D}}),Object.defineProperty(c,"isFunction",{enumerable:!0,get:function(){return _}}),Object.defineProperty(c,"isNil",{enumerable:!0,get:function(){return V}}),Object.defineProperty(c,"isBlank",{enumerable:!0,get:function(){return R}}),Object.defineProperty(c,"isCtor",{enumerable:!0,get:function(){return F}}),Object.defineProperty(c,"pathGetter",{enumerable:!0,get:function(){return K}}),Object.defineProperty(c,"pathSetter",{enumerable:!0,get:function(){return A}}),Object.defineProperty(c,"getPath",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(c,"setPath",{enumerable:!0,get:function(){return ie}}),Object.defineProperty(c,"humanise",{enumerable:!0,get:function(){return ue}}),Object.defineProperty(c,"escapeHtml",{enumerable:!0,get:function(){return se}}),Object.defineProperty(c,"titleCase",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(c,"expand",{enumerable:!0,get:function(){return de}}),Object.defineProperty(c,"toArray",{enumerable:!0,get:function(){return be}}),Object.defineProperty(c,"merge",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(c,"mergeRow",{enumerable:!0,get:function(){return ye}}),Object.defineProperty(c,"Lru",{enumerable:!0,get:function(){return ge}}),Object.defineProperty(c,"collator",{enumerable:!0,get:function(){return o}}),Object.defineProperty(c,"defaultCompare",{enumerable:!0,get:function(){return l}}),Object.defineProperty(c,"now",{enumerable:!0,get:function(){return y}}),Object.defineProperty(c,"nextFrame",{enumerable:!0,get:function(){return p}}),Object.defineProperty(c,"cancelFrame",{enumerable:!0,get:function(){return E}}),Object.defineProperty(c,"frameBatched",{enumerable:!0,get:function(){return te}}),Object.defineProperty(c,"settleDebounce",{enumerable:!0,get:function(){return M}}),Object.defineProperty(c,"whenIdle",{enumerable:!0,get:function(){return b}}),Object.defineProperty(c,"uid",{enumerable:!0,get:function(){return d}});const Q="1.80.0";async function X(){return Q}const C="1.80.0",q=new Set,Y=2e3;function z(e){if(q.add(e),q.size>Y){const t=q.values().next().value;t!==void 0&&q.delete(t)}}const x=[],P=500;function s(e,t,n){x.push({key:e,level:t,message:n.map(a=>typeof a=="string"?a:u(a)).join(" "),at:Date.now()}),x.length>P&&x.shift()}function u(e){if(e instanceof Error)return e.message;try{return JSON.stringify(e)}catch{return String(e)}}function i(){return x.map(e=>({...e}))}function f(e){if(e.length===0||typeof e[0]!="string")return e;const t=e[0].replace(/^\[lattice\]\s*/,"");return t===e[0]?e:[t,...e.slice(1)]}function G(e,...t){if(q.has(e))return;z(e);const n=f(t);s(e,"warn",n),console.warn("[lattice]",...n)}function L(e,...t){if(q.has(e))return;z(e);const n=f(t);s(e,"info",n),console.info("[lattice]",...n)}function j(){q.clear(),x.length=0}function T(e,t){const n=new Error(`[lattice] ${e}`);throw t!==void 0&&(n.cause=t),n}function $(e,t){e||T(t)}const B=(()=>{try{return!(typeof process<"u"&&process.env&&process.env.NODE_ENV==="production")}catch{return!0}})();function D(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function _(e){return typeof e=="function"}function V(e){return e==null}function R(e){return e==null||e===""}function F(e){return typeof e!="function"?!1:/^class[\s{]/.test(Function.prototype.toString.call(e))?!0:!!(e.prototype&&Object.getOwnPropertyNames(e.prototype).length>1)}const S=new Map;function K(e){let t=S.get(e);if(t)return t;if(!e.includes("."))t=n=>n?.[e];else{const n=e.split("."),a=n.length;t=v=>{let O=v;for(let k=0;k<a;k++){if(O==null)return;O=O[n[k]]}return O}}return S.set(e,t),t}const W=new Map;function A(e){let t=W.get(e);if(t)return t;if(!e.includes("."))t=(n,a)=>{n!=null&&(n[e]=a)};else{const n=e.split("."),a=n.length-1;t=(v,O)=>{let k=v;for(let g=0;g<a;g++){if(k==null)return;const m=n[g];k[m]==null&&(k[m]={}),k=k[m]}k!=null&&(k[n[a]]=O)}}return W.set(e,t),t}function Z(e,t){return K(t)(e)}function ie(e,t,n){A(t)(e,n)}function ue(e){return e?(e.includes(".")?e.slice(e.lastIndexOf(".")+1):e).replace(/[_-]+/g," ").replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replace(/\s+/g," ").trim().replace(/^./,n=>n.toUpperCase()):""}const le={"&":"&","<":"<",">":">",'"':""","'":"'"};function se(e){const t=e==null?"":String(e);return/[&<>"']/.test(t)?t.replace(/[&<>"']/g,n=>le[n]):t}function fe(e){return String(e).replace(/\w\S*/g,t=>t[0].toUpperCase()+t.slice(1).toLowerCase())}function de(e,t,n){if(e!==void 0)return e===!0?{enabled:!0,...n}:e===!1?{enabled:!1}:D(e)?e:{[t]:e,enabled:!0}}function be(e){return e==null?[]:Array.isArray(e)?e:[e]}const me=Object.freeze(new Set(["__proto__","constructor","prototype"]));function ae(e,t){if(!D(e))return D(t)?{...t}:t;if(!D(t))return t===void 0?e:t;const n={...e};for(const a of Object.keys(t)){if(me.has(a))continue;const v=t[a];v!==void 0&&(n[a]=D(v)&&D(n[a])?ae(n[a],v):v)}return n}function ye(e,t){if(!D(e)||!D(t)||e===t)return t;const n=Object.create(Object.getPrototypeOf(e));return Object.assign(n,e,t),n}class ge{#n;#e=new Map;#t;constructor(t=256,n=null){this.#n=t,this.#t=n}get size(){return this.#e.size}get max(){return this.#n}set max(t){this.#n=t,this.#r()}has(t){return this.#e.has(t)}get(t){const n=this.#e;if(!n.has(t))return;const a=n.get(t);return n.delete(t),n.set(t,a),a}peek(t){return this.#e.get(t)}set(t,n){const a=this.#e;return a.has(t)&&a.delete(t),a.set(t,n),this.#r(),n}delete(t){const n=this.#e.get(t);return this.#e.delete(t)&&this.#t&&this.#t(n,t),n}clear(){if(this.#t)for(const[t,n]of this.#e)this.#t(n,t);this.#e.clear()}keys(){return this.#e.keys()}values(){return this.#e.values()}#r(){const t=this.#e;for(;t.size>this.#n;){const n=t.keys().next().value,a=t.get(n);t.delete(n),this.#t&&this.#t(a,n)}}}const r=new Map;function o(e,t){const n=`${e||""}|${t?JSON.stringify(t):""}`;let a=r.get(n);return a||(a=new Intl.Collator(e||void 0,{numeric:!0,sensitivity:"variant",...t}),r.set(n,a)),a}function l(e,t){if(e===t)return 0;if(e==null)return 1;if(t==null)return-1;if(typeof e=="number"&&typeof t=="number")return Number.isNaN(e)?Number.isNaN(t)?0:1:Number.isNaN(t)||e<t?-1:e>t?1:0;const n=String(e),a=String(t);return n<a?-1:n>a?1:0}function y(){return typeof performance<"u"&&performance.now?performance.now():Date.now()}const h=typeof requestAnimationFrame=="function";function p(e){return h?requestAnimationFrame(e):setTimeout(()=>e(y()),16)}function E(e){e!=null&&(h?cancelAnimationFrame(e):clearTimeout(e))}function te(e){let t=null,n=null;const a=()=>{t=null;const O=n;n=null,e(...O||[])},v=(...O)=>{n=O,t===null&&(t=p(a))};return v.cancel=()=>{E(t),t=null,n=null},v.flush=()=>{t!==null&&(E(t),a())},v}function M(e,t){let n=null,a=null;const v=()=>{if(n=null,a===null)return;const g=a;a=null,e(...g),O()},O=()=>{n=setTimeout(v,t),typeof n?.unref=="function"&&n.unref()},k=(...g)=>{n===null?(e(...g),O()):(a=g,clearTimeout(n),O())};return k.flush=()=>{if(n!==null&&clearTimeout(n),n=null,a===null)return;const g=a;a=null,e(...g)},k.cancel=()=>{n!==null&&clearTimeout(n),n=null,a=null},k.pending=()=>n!==null||a!==null,k}function b(e,t=50){return typeof requestIdleCallback=="function"?requestIdleCallback(e,{timeout:t}):setTimeout(()=>e({timeRemaining:()=>0,didTimeout:!0}),1)}let w=0;function d(e="l"){return`${e}${(++w).toString(36)}`}}),ce("packages/modules/shared/adapter.js",function(c,U){"use strict";Object.defineProperty(c,"EVENT_NAMES",{enumerable:!0,get:function(){return Q}}),Object.defineProperty(c,"handlerName",{enumerable:!0,get:function(){return C}}),Object.defineProperty(c,"dashedName",{enumerable:!0,get:function(){return q}}),Object.defineProperty(c,"CONFIG_KEY_ALIASES",{enumerable:!0,get:function(){return Y}}),Object.defineProperty(c,"aliasConfigKey",{enumerable:!0,get:function(){return z}}),Object.defineProperty(c,"isHandlerProp",{enumerable:!0,get:function(){return P}}),Object.defineProperty(c,"partition",{enumerable:!0,get:function(){return s}}),Object.defineProperty(c,"createGridController",{enumerable:!0,get:function(){return u}});const Q=Object.freeze(["ready","destroy","render:first","render:done","config:changed","licence:changed","model:changed","rows:changed","rows:queued","rows:deferred","rows:paused","rows:resumed","row:received","row:sent","row:copied","row:moved","source:error","source:total","stream:chunk","stream:end","stream:evicted","rowDrag:started","rowDrag:moved","rowDrag:left","rowDrag:ended","cell:changed","cell:pending","cell:confirmed","cell:reverted","cell:conflict","cell:clicked","cell:dblclicked","cell:contextmenu","cell:mouseover","cell:mouseout","cell:mousedown","cell:mouseup","cell:edit:start","cell:edit:end","row:edit:start","row:edit:end","row:clicked","row:dblclicked","row:pending","row:confirmed","row:reverted","row:conflict","form:opened","form:closed","form:saved","form:error","sort:changed","filter:changed","group:toggled","facet:computed","facet:filtered","facet:expanded","facet:failed","column:moved","column:resized","column:visible","column:pinned","column:grouped","column:pivoted","column:filter:open","column:profile:open","column:menu:open","columns:changed","columns:tagged","columngroup:changed","header:contextmenu","pivot:drill","selection:changed","range:changed","clipboard:copy","page:changed","scroll","scroll:end","size:changed","detail:toggled","detail:cell:edit:start","detail:cell:edit:end","detail:row:edit:start","detail:row:edit:end","detail:cell:changed","toolpanel:focus","highlight:changed","find:changed","tree:loading","tree:loaded","tree:loadFailed","tree:loadAborted","state:changed","state:reset","history:changed","history:applied","views:changed","view:applied","view:saved","view:removed","view:renamed","view:default","formatting:changed","redaction:changed","permissions:changed","presentation:changed","presentation:started","presentation:ended","presentation:view","presentation:scale","presentation:spotlight","presentation:captured","comment:added","comment:edited","comment:deleted","comment:failed","comment:resolved","comment:unresolved","comment:threadOpened","comment:threadClosed","comment:indexLoaded","presence:published","presence:joined","presence:updated","presence:left","presence:failed","presence:lockRefused","diff:changed","diff:swapped","timeline:attached","timeline:detached","timeline:seek","timeline:seeking","annotation:changed","validation:failed","validation:cleared","export:progress","export:request","export:done","shortcuts:opened","shortcuts:closed","print:before","print:after","beforeEdit","beforeSort","beforeFilter","beforeColumnMove","beforeColumnResize","beforeColumnHide","beforeSelect","beforeRowAdd","beforeDelete","beforeRowMove","beforeGroup","beforeRowReceive","edit:cancelled","sort:cancelled","filter:cancelled","columnMove:cancelled","columnResize:cancelled","columnHide:cancelled","selection:cancelled","rowAdd:cancelled","delete:cancelled","rowMove:cancelled","group:cancelled","rowReceive:cancelled"]),X=Object.freeze({sort:(i,f)=>i.sort.set(f||[]),filters:(i,f)=>i.filters.set(f||null),quickFilter:(i,f)=>{if(f&&typeof f=="object"){i.filters.quick(f.text||"",{mode:f.mode});return}i.filters.quick(typeof f=="string"?f:"")},selectedKeys:(i,f)=>i.selection.set(Array.isArray(f)?f:[])});function C(i){return`on${String(i).split(":").map(G=>G.charAt(0).toUpperCase()+G.slice(1)).join("")}`}function q(i){return String(i).replace(/:/g,"-")}const Y=Object.freeze({"row-key":"rowKey","row-height":"rowHeight","header-height":"headerHeight","auto-height":"autoHeight"});function z(i){return Object.hasOwn(Y,i)?Y[i]:i}const x=Object.freeze(Object.fromEntries(Q.map(i=>[C(i),i])));function P(i){return Object.hasOwn(x,i)}function s(i){const f={},G={},L={};for(const[j,T]of Object.entries(i||{})){if(P(j)){L[j]=T;continue}if(Object.hasOwn(X,j)){G[j]=T;continue}f[j]=T}return{config:f,imperative:G,handlers:L}}function u(i){const f=i.createGrid;if(typeof f!="function")throw new TypeError("createGridController needs createGrid; pass it in from the grid package.");const G=s(i.props||{}),L=f(i.element,{...G.config});let j=G.handlers,T=G.config,$={};const B=V=>{if(!V||typeof V.type!="string")return;const R=j[C(V.type)];typeof R=="function"&&R(V)},D=L.on("*",B);for(const[V,R]of Object.entries(G.imperative))R!==void 0&&(X[V](L,R),$[V]=R);let _=!1;return{grid:L,update(V){if(_)return;const R=s(V||{});j=R.handlers;const F={};for(const[S,K]of Object.entries(R.config))Object.is(T[S],K)||(F[S]=K);for(const S of Object.keys(T))Object.hasOwn(R.config,S)||(F[S]=void 0);Object.keys(F).length&&L.setAll(F),T=R.config;for(const[S,K]of Object.entries(X)){const W=R.imperative[S];Object.is($[S],W)||W===void 0&&!Object.hasOwn($,S)||(K(L,W),$[S]=W)}},destroy(){_||(_=!0,D(),L.destroy())}}}}),ce("packages/modules/react/viewers.js",function(c,U){"use strict";Object.defineProperty(c,"VIEWER_EVENTS",{enumerable:!0,get:function(){return C}}),Object.defineProperty(c,"VIEWER_APPLY",{enumerable:!0,get:function(){return q}}),Object.defineProperty(c,"VIEWER_BULK_UPDATE",{enumerable:!0,get:function(){return Y}}),Object.defineProperty(c,"viewerHandlerName",{enumerable:!0,get:function(){return z}}),Object.defineProperty(c,"partitionViewerProps",{enumerable:!0,get:function(){return P}}),Object.defineProperty(c,"createViewerController",{enumerable:!0,get:function(){return s}});const X=U("packages/core/src/internal/util.js").warnOnce,C=Object.freeze({kpi:Object.freeze(["tile:click","tile:dblclick","tile:contextmenu","node:toggle","change","tile:status"]),kanban:Object.freeze(["card:click","card:dblclick","card:contextmenu","card:move","card:reverted","card:confirmed","selection:changed","column:collapse","card:add","drag:start","drag:end","swimlane:collapse","swimlane:reorder","column:reorder","filter:changed","sprint:changed","epic:changed","card:expand","card:drill","card:edit","card:sla","beforeMove","beforeAdd","beforeEdit","beforeLaneReorder","beforeColumnReorder","beforeColumnChange","move:cancelled","add:cancelled","edit:cancelled","laneReorder:cancelled","columnReorder:cancelled","columnChange:cancelled"]),tabs:Object.freeze(["beforeTabChange","tab:changed","tabChange:cancelled"]),chart:Object.freeze(["click","hover","leave","draw","legend"]),gantt:Object.freeze(["schedule","error"]),layout:Object.freeze(["layout:changed","window:moved","window:resized","window:closed","beforeWindowClose","windowClose:cancelled"]),router:Object.freeze(["metrics"])}),q=Object.freeze({kpi:Object.freeze({rows:(u,i)=>u.setRows(Array.isArray(i)?i:[])}),kanban:Object.freeze({rows:(u,i)=>u.setRows(Array.isArray(i)?i:[]),quickFilter:(u,i)=>u.setQuickFilter(typeof i=="string"?i:""),sprint:(u,i)=>u.setSprint(i),epic:(u,i)=>u.setEpic(i),loading:(u,i)=>u.setLoading(!!i),error:(u,i)=>u.setError(i??null)}),gantt:Object.freeze({tasks:(u,i)=>u.setTasks(Array.isArray(i)?i:[]),dependencies:(u,i)=>u.setDependencies(Array.isArray(i)?i:[])}),tabs:Object.freeze({active:(u,i)=>{typeof i=="string"&&u.activate(i)}}),chart:Object.freeze({}),layout:Object.freeze({})}),Y=Object.freeze({chart:"update"});function z(u){return`on${String(u).split(":").map(f=>f.charAt(0).toUpperCase()+f.slice(1)).join("")}`}const x=Object.freeze(Object.fromEntries(Object.entries(C).map(([u,i])=>[u,Object.freeze(Object.fromEntries(i.map(f=>[z(f),f])))])));function P(u,i){const f=x[u]||{},G=q[u]||{},L={},j={},T={};for(const[$,B]of Object.entries(i||{})){if(Object.hasOwn(f,$)){T[$]=B;continue}if(Object.hasOwn(G,$)){j[$]=B,L[$]=B;continue}L[$]=B}return{config:L,live:j,handlers:T}}function s(u){const i=String(u.viewer),f=u.mount,G=u.name||i;if(typeof f!="function")throw new TypeError(`createViewerController needs a mount factory for "${i}"; pass the module's own factory in, e.g. { createKPI } from lattice-grid/modules/kpi.`);const L=P(i,u.props||{}),j=f(u.element,{...L.config});if(!j||typeof j!="object")throw new TypeError(`the ${G} factory returned no instance; nothing can be driven.`);let T=L.handlers,$=L.config;const B={...L.live},D=[];if(typeof j.on=="function")for(const F of C[i]||[]){const S=z(F),K=j.on(F,W=>{const A=T[S];typeof A=="function"&&A(W)});typeof K=="function"&&D.push(K)}const _=Y[i],V=q[i]||{};let R=!1;return{instance:j,update(F){if(R)return;const S=P(i,F||{});T=S.handlers;const K={};for(const[A,Z]of Object.entries(S.config))Object.is($[A],Z)||(K[A]=Z);if($=S.config,!Object.keys(K).length)return;const W=[];for(const A of Object.keys(K)){const Z=V[A];if(Z){Z(j,K[A]),B[A]=K[A];continue}_&&typeof j[_]=="function"||W.push(A)}if(_&&typeof j[_]=="function"){const A={};for(const Z of Object.keys(K))V[Z]||(A[Z]=K[Z]);Object.keys(A).length&&j[_](A)}W.length&&X(`react.viewer.${i}.mountOnly.${W.join(".")}`,`${G}: ${W.map(A=>`\`${A}\``).join(", ")} changed, but ${G} takes ${W.length===1?"it":"them"} only when the viewer is created. Nothing was applied and the viewer was NOT rebuilt — rebuilding it silently would throw away scroll position, selection and expansion. Give the component a \`key\` that changes when this must take effect, so the rebuild is yours and visible, or drive the instance through the ref.`)},destroy(){if(!R){R=!0;for(const F of D)try{F()}catch{}D.length=0,typeof j.destroy=="function"&&j.destroy()}}}}}),ce("packages/modules/presets/index.js",function(c,U){"use strict";Object.defineProperty(c,"themeFromMui",{enumerable:!0,get:function(){return z}}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return x}});const X=U("packages/core/src/internal/util.js").warnOnce;function C(P,s){if(typeof P!="string")return P;const u=P.trim().match(/^#([0-9a-f]{6})$/i);if(!u)return P;const i=u[1],f=parseInt(i.slice(0,2),16),G=parseInt(i.slice(2,4),16),L=parseInt(i.slice(4,6),16);return`rgba(${f}, ${G}, ${L}, ${s})`}function q(P){const s=P.palette,u=s.mode==="dark";return{"--lattice-background":s.background.default,"--lattice-surface":s.background.paper,"--lattice-surface-alt":u?"#2a2a2a":s.grey[50],"--lattice-border-color":s.divider,"--lattice-border-strong":u?s.grey[600]:s.grey[400],"--lattice-foreground":s.text.primary,"--lattice-foreground-muted":s.text.secondary,"--lattice-header-foreground":s.text.primary,"--lattice-accent":s.primary.main,"--lattice-accent-contrast":s.primary.contrastText,"--lattice-link-color":s.primary.main,"--lattice-selected-background":C(s.primary.main,.12),"--lattice-hovered-background":C(s.text.primary,.06),"--lattice-focus-color":s.primary.main,"--lattice-variant-danger-solid":s.error.main,"--lattice-variant-danger-fill":C(s.error.main,.12),"--lattice-variant-warning-solid":s.warning.main,"--lattice-variant-warning-fill":C(s.warning.main,.12),"--lattice-variant-success-solid":s.success.main,"--lattice-variant-success-fill":C(s.success.main,.12),"--lattice-variant-info-solid":s.info.main,"--lattice-variant-info-fill":C(s.info.main,.12),"--lattice-radius":`${P.shape.borderRadius}px`,"--lattice-font-family":P.typography.fontFamily,"--lattice-font-size":`${P.typography.body2.fontSize}`,"--lattice-header-font-weight":String(P.typography.fontWeightMedium)}}function Y(P){return`.lattice {
|
|
6
|
+
(function(je){"use strict";var we=Object.create(null),Oe=Object.create(null);function ce(c,U){we[c]=U}function ve(c){var U=Oe[c];if(U)return U;var Q=Object.create(null);Oe[c]=Q;var X=we[c];if(!X)throw new Error("[lattice] missing module: "+c);return X(Q,ve),Q}ce("packages/core/src/internal/util.js",function(c,U){"use strict";Object.defineProperty(c,"VERSION",{enumerable:!0,get:function(){return C}}),Object.defineProperty(c,"reportedWarnings",{enumerable:!0,get:function(){return i}}),Object.defineProperty(c,"warnOnce",{enumerable:!0,get:function(){return G}}),Object.defineProperty(c,"infoOnce",{enumerable:!0,get:function(){return L}}),Object.defineProperty(c,"resetWarnings",{enumerable:!0,get:function(){return j}}),Object.defineProperty(c,"fail",{enumerable:!0,get:function(){return T}}),Object.defineProperty(c,"invariant",{enumerable:!0,get:function(){return $}}),Object.defineProperty(c,"DEV",{enumerable:!0,get:function(){return B}}),Object.defineProperty(c,"isObject",{enumerable:!0,get:function(){return D}}),Object.defineProperty(c,"isFunction",{enumerable:!0,get:function(){return _}}),Object.defineProperty(c,"isNil",{enumerable:!0,get:function(){return V}}),Object.defineProperty(c,"isBlank",{enumerable:!0,get:function(){return R}}),Object.defineProperty(c,"isCtor",{enumerable:!0,get:function(){return F}}),Object.defineProperty(c,"pathGetter",{enumerable:!0,get:function(){return K}}),Object.defineProperty(c,"pathSetter",{enumerable:!0,get:function(){return A}}),Object.defineProperty(c,"getPath",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(c,"setPath",{enumerable:!0,get:function(){return ie}}),Object.defineProperty(c,"humanise",{enumerable:!0,get:function(){return ue}}),Object.defineProperty(c,"escapeHtml",{enumerable:!0,get:function(){return se}}),Object.defineProperty(c,"titleCase",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(c,"expand",{enumerable:!0,get:function(){return de}}),Object.defineProperty(c,"toArray",{enumerable:!0,get:function(){return be}}),Object.defineProperty(c,"merge",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(c,"mergeRow",{enumerable:!0,get:function(){return ye}}),Object.defineProperty(c,"Lru",{enumerable:!0,get:function(){return ge}}),Object.defineProperty(c,"collator",{enumerable:!0,get:function(){return o}}),Object.defineProperty(c,"defaultCompare",{enumerable:!0,get:function(){return l}}),Object.defineProperty(c,"now",{enumerable:!0,get:function(){return y}}),Object.defineProperty(c,"nextFrame",{enumerable:!0,get:function(){return p}}),Object.defineProperty(c,"cancelFrame",{enumerable:!0,get:function(){return E}}),Object.defineProperty(c,"frameBatched",{enumerable:!0,get:function(){return te}}),Object.defineProperty(c,"settleDebounce",{enumerable:!0,get:function(){return M}}),Object.defineProperty(c,"whenIdle",{enumerable:!0,get:function(){return b}}),Object.defineProperty(c,"uid",{enumerable:!0,get:function(){return d}});const Q="1.81.0";async function X(){return Q}const C="1.81.0",q=new Set,Y=2e3;function z(e){if(q.add(e),q.size>Y){const t=q.values().next().value;t!==void 0&&q.delete(t)}}const x=[],P=500;function s(e,t,n){x.push({key:e,level:t,message:n.map(a=>typeof a=="string"?a:u(a)).join(" "),at:Date.now()}),x.length>P&&x.shift()}function u(e){if(e instanceof Error)return e.message;try{return JSON.stringify(e)}catch{return String(e)}}function i(){return x.map(e=>({...e}))}function f(e){if(e.length===0||typeof e[0]!="string")return e;const t=e[0].replace(/^\[lattice\]\s*/,"");return t===e[0]?e:[t,...e.slice(1)]}function G(e,...t){if(q.has(e))return;z(e);const n=f(t);s(e,"warn",n),console.warn("[lattice]",...n)}function L(e,...t){if(q.has(e))return;z(e);const n=f(t);s(e,"info",n),console.info("[lattice]",...n)}function j(){q.clear(),x.length=0}function T(e,t){const n=new Error(`[lattice] ${e}`);throw t!==void 0&&(n.cause=t),n}function $(e,t){e||T(t)}const B=(()=>{try{return!(typeof process<"u"&&process.env&&process.env.NODE_ENV==="production")}catch{return!0}})();function D(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function _(e){return typeof e=="function"}function V(e){return e==null}function R(e){return e==null||e===""}function F(e){return typeof e!="function"?!1:/^class[\s{]/.test(Function.prototype.toString.call(e))?!0:!!(e.prototype&&Object.getOwnPropertyNames(e.prototype).length>1)}const S=new Map;function K(e){let t=S.get(e);if(t)return t;if(!e.includes("."))t=n=>n?.[e];else{const n=e.split("."),a=n.length;t=v=>{let O=v;for(let k=0;k<a;k++){if(O==null)return;O=O[n[k]]}return O}}return S.set(e,t),t}const W=new Map;function A(e){let t=W.get(e);if(t)return t;if(!e.includes("."))t=(n,a)=>{n!=null&&(n[e]=a)};else{const n=e.split("."),a=n.length-1;t=(v,O)=>{let k=v;for(let g=0;g<a;g++){if(k==null)return;const m=n[g];k[m]==null&&(k[m]={}),k=k[m]}k!=null&&(k[n[a]]=O)}}return W.set(e,t),t}function Z(e,t){return K(t)(e)}function ie(e,t,n){A(t)(e,n)}function ue(e){return e?(e.includes(".")?e.slice(e.lastIndexOf(".")+1):e).replace(/[_-]+/g," ").replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replace(/\s+/g," ").trim().replace(/^./,n=>n.toUpperCase()):""}const le={"&":"&","<":"<",">":">",'"':""","'":"'"};function se(e){const t=e==null?"":String(e);return/[&<>"']/.test(t)?t.replace(/[&<>"']/g,n=>le[n]):t}function fe(e){return String(e).replace(/\w\S*/g,t=>t[0].toUpperCase()+t.slice(1).toLowerCase())}function de(e,t,n){if(e!==void 0)return e===!0?{enabled:!0,...n}:e===!1?{enabled:!1}:D(e)?e:{[t]:e,enabled:!0}}function be(e){return e==null?[]:Array.isArray(e)?e:[e]}const me=Object.freeze(new Set(["__proto__","constructor","prototype"]));function ae(e,t){if(!D(e))return D(t)?{...t}:t;if(!D(t))return t===void 0?e:t;const n={...e};for(const a of Object.keys(t)){if(me.has(a))continue;const v=t[a];v!==void 0&&(n[a]=D(v)&&D(n[a])?ae(n[a],v):v)}return n}function ye(e,t){if(!D(e)||!D(t)||e===t)return t;const n=Object.create(Object.getPrototypeOf(e));return Object.assign(n,e,t),n}class ge{#n;#e=new Map;#t;constructor(t=256,n=null){this.#n=t,this.#t=n}get size(){return this.#e.size}get max(){return this.#n}set max(t){this.#n=t,this.#r()}has(t){return this.#e.has(t)}get(t){const n=this.#e;if(!n.has(t))return;const a=n.get(t);return n.delete(t),n.set(t,a),a}peek(t){return this.#e.get(t)}set(t,n){const a=this.#e;return a.has(t)&&a.delete(t),a.set(t,n),this.#r(),n}delete(t){const n=this.#e.get(t);return this.#e.delete(t)&&this.#t&&this.#t(n,t),n}clear(){if(this.#t)for(const[t,n]of this.#e)this.#t(n,t);this.#e.clear()}keys(){return this.#e.keys()}values(){return this.#e.values()}#r(){const t=this.#e;for(;t.size>this.#n;){const n=t.keys().next().value,a=t.get(n);t.delete(n),this.#t&&this.#t(a,n)}}}const r=new Map;function o(e,t){const n=`${e||""}|${t?JSON.stringify(t):""}`;let a=r.get(n);return a||(a=new Intl.Collator(e||void 0,{numeric:!0,sensitivity:"variant",...t}),r.set(n,a)),a}function l(e,t){if(e===t)return 0;if(e==null)return 1;if(t==null)return-1;if(typeof e=="number"&&typeof t=="number")return Number.isNaN(e)?Number.isNaN(t)?0:1:Number.isNaN(t)||e<t?-1:e>t?1:0;const n=String(e),a=String(t);return n<a?-1:n>a?1:0}function y(){return typeof performance<"u"&&performance.now?performance.now():Date.now()}const h=typeof requestAnimationFrame=="function";function p(e){return h?requestAnimationFrame(e):setTimeout(()=>e(y()),16)}function E(e){e!=null&&(h?cancelAnimationFrame(e):clearTimeout(e))}function te(e){let t=null,n=null;const a=()=>{t=null;const O=n;n=null,e(...O||[])},v=(...O)=>{n=O,t===null&&(t=p(a))};return v.cancel=()=>{E(t),t=null,n=null},v.flush=()=>{t!==null&&(E(t),a())},v}function M(e,t){let n=null,a=null;const v=()=>{if(n=null,a===null)return;const g=a;a=null,e(...g),O()},O=()=>{n=setTimeout(v,t),typeof n?.unref=="function"&&n.unref()},k=(...g)=>{n===null?(e(...g),O()):(a=g,clearTimeout(n),O())};return k.flush=()=>{if(n!==null&&clearTimeout(n),n=null,a===null)return;const g=a;a=null,e(...g)},k.cancel=()=>{n!==null&&clearTimeout(n),n=null,a=null},k.pending=()=>n!==null||a!==null,k}function b(e,t=50){return typeof requestIdleCallback=="function"?requestIdleCallback(e,{timeout:t}):setTimeout(()=>e({timeRemaining:()=>0,didTimeout:!0}),1)}let w=0;function d(e="l"){return`${e}${(++w).toString(36)}`}}),ce("packages/modules/shared/adapter.js",function(c,U){"use strict";Object.defineProperty(c,"EVENT_NAMES",{enumerable:!0,get:function(){return Q}}),Object.defineProperty(c,"handlerName",{enumerable:!0,get:function(){return C}}),Object.defineProperty(c,"dashedName",{enumerable:!0,get:function(){return q}}),Object.defineProperty(c,"CONFIG_KEY_ALIASES",{enumerable:!0,get:function(){return Y}}),Object.defineProperty(c,"aliasConfigKey",{enumerable:!0,get:function(){return z}}),Object.defineProperty(c,"isHandlerProp",{enumerable:!0,get:function(){return P}}),Object.defineProperty(c,"partition",{enumerable:!0,get:function(){return s}}),Object.defineProperty(c,"createGridController",{enumerable:!0,get:function(){return u}});const Q=Object.freeze(["ready","destroy","render:first","render:done","config:changed","licence:changed","model:changed","rows:changed","rows:queued","rows:deferred","rows:paused","rows:resumed","row:received","row:sent","row:copied","row:moved","source:error","source:total","stream:chunk","stream:end","stream:evicted","rowDrag:started","rowDrag:moved","rowDrag:left","rowDrag:ended","cell:changed","cell:pending","cell:confirmed","cell:reverted","cell:conflict","cell:clicked","cell:dblclicked","cell:contextmenu","cell:mouseover","cell:mouseout","cell:mousedown","cell:mouseup","cell:edit:start","cell:edit:end","row:edit:start","row:edit:end","row:clicked","row:dblclicked","row:pending","row:confirmed","row:reverted","row:conflict","form:opened","form:closed","form:saved","form:error","sort:changed","filter:changed","group:toggled","facet:computed","facet:filtered","facet:expanded","facet:failed","column:moved","column:resized","column:visible","column:pinned","column:grouped","column:pivoted","column:filter:open","column:profile:open","column:menu:open","columns:changed","columns:tagged","columngroup:changed","header:contextmenu","pivot:drill","selection:changed","range:changed","clipboard:copy","page:changed","scroll","scroll:end","size:changed","detail:toggled","detail:cell:edit:start","detail:cell:edit:end","detail:row:edit:start","detail:row:edit:end","detail:cell:changed","toolpanel:focus","highlight:changed","find:changed","tree:loading","tree:loaded","tree:loadFailed","tree:loadAborted","state:changed","state:reset","history:changed","history:applied","views:changed","view:applied","view:saved","view:removed","view:renamed","view:default","formatting:changed","redaction:changed","permissions:changed","presentation:changed","presentation:started","presentation:ended","presentation:view","presentation:scale","presentation:spotlight","presentation:captured","comment:added","comment:edited","comment:deleted","comment:failed","comment:resolved","comment:unresolved","comment:threadOpened","comment:threadClosed","comment:indexLoaded","presence:published","presence:joined","presence:updated","presence:left","presence:failed","presence:lockRefused","diff:changed","diff:swapped","timeline:attached","timeline:detached","timeline:seek","timeline:seeking","annotation:changed","validation:failed","validation:cleared","export:progress","export:request","export:done","shortcuts:opened","shortcuts:closed","print:before","print:after","beforeEdit","beforeSort","beforeFilter","beforeColumnMove","beforeColumnResize","beforeColumnHide","beforeSelect","beforeRowAdd","beforeDelete","beforeRowMove","beforeGroup","beforeRowReceive","edit:cancelled","sort:cancelled","filter:cancelled","columnMove:cancelled","columnResize:cancelled","columnHide:cancelled","selection:cancelled","rowAdd:cancelled","delete:cancelled","rowMove:cancelled","group:cancelled","rowReceive:cancelled"]),X=Object.freeze({sort:(i,f)=>i.sort.set(f||[]),filters:(i,f)=>i.filters.set(f||null),quickFilter:(i,f)=>{if(f&&typeof f=="object"){i.filters.quick(f.text||"",{mode:f.mode});return}i.filters.quick(typeof f=="string"?f:"")},selectedKeys:(i,f)=>i.selection.set(Array.isArray(f)?f:[])});function C(i){return`on${String(i).split(":").map(G=>G.charAt(0).toUpperCase()+G.slice(1)).join("")}`}function q(i){return String(i).replace(/:/g,"-")}const Y=Object.freeze({"row-key":"rowKey","row-height":"rowHeight","header-height":"headerHeight","auto-height":"autoHeight"});function z(i){return Object.hasOwn(Y,i)?Y[i]:i}const x=Object.freeze(Object.fromEntries(Q.map(i=>[C(i),i])));function P(i){return Object.hasOwn(x,i)}function s(i){const f={},G={},L={};for(const[j,T]of Object.entries(i||{})){if(P(j)){L[j]=T;continue}if(Object.hasOwn(X,j)){G[j]=T;continue}f[j]=T}return{config:f,imperative:G,handlers:L}}function u(i){const f=i.createGrid;if(typeof f!="function")throw new TypeError("createGridController needs createGrid; pass it in from the grid package.");const G=s(i.props||{}),L=f(i.element,{...G.config});let j=G.handlers,T=G.config,$={};const B=V=>{if(!V||typeof V.type!="string")return;const R=j[C(V.type)];typeof R=="function"&&R(V)},D=L.on("*",B);for(const[V,R]of Object.entries(G.imperative))R!==void 0&&(X[V](L,R),$[V]=R);let _=!1;return{grid:L,update(V){if(_)return;const R=s(V||{});j=R.handlers;const F={};for(const[S,K]of Object.entries(R.config))Object.is(T[S],K)||(F[S]=K);for(const S of Object.keys(T))Object.hasOwn(R.config,S)||(F[S]=void 0);Object.keys(F).length&&L.setAll(F),T=R.config;for(const[S,K]of Object.entries(X)){const W=R.imperative[S];Object.is($[S],W)||W===void 0&&!Object.hasOwn($,S)||(K(L,W),$[S]=W)}},destroy(){_||(_=!0,D(),L.destroy())}}}}),ce("packages/modules/react/viewers.js",function(c,U){"use strict";Object.defineProperty(c,"VIEWER_EVENTS",{enumerable:!0,get:function(){return C}}),Object.defineProperty(c,"VIEWER_APPLY",{enumerable:!0,get:function(){return q}}),Object.defineProperty(c,"VIEWER_BULK_UPDATE",{enumerable:!0,get:function(){return Y}}),Object.defineProperty(c,"viewerHandlerName",{enumerable:!0,get:function(){return z}}),Object.defineProperty(c,"partitionViewerProps",{enumerable:!0,get:function(){return P}}),Object.defineProperty(c,"createViewerController",{enumerable:!0,get:function(){return s}});const X=U("packages/core/src/internal/util.js").warnOnce,C=Object.freeze({kpi:Object.freeze(["tile:click","tile:dblclick","tile:contextmenu","node:toggle","change","tile:status"]),kanban:Object.freeze(["card:click","card:dblclick","card:contextmenu","card:move","card:reverted","card:confirmed","selection:changed","column:collapse","card:add","drag:start","drag:end","swimlane:collapse","swimlane:reorder","column:reorder","filter:changed","sprint:changed","epic:changed","card:expand","card:drill","card:edit","card:sla","beforeMove","beforeAdd","beforeEdit","beforeLaneReorder","beforeColumnReorder","beforeColumnChange","move:cancelled","add:cancelled","edit:cancelled","laneReorder:cancelled","columnReorder:cancelled","columnChange:cancelled"]),tabs:Object.freeze(["beforeTabChange","tab:changed","tabChange:cancelled"]),chart:Object.freeze(["click","hover","leave","draw","legend"]),gantt:Object.freeze(["schedule","error"]),layout:Object.freeze(["layout:changed","window:moved","window:resized","window:closed","beforeWindowClose","windowClose:cancelled"]),router:Object.freeze(["metrics"])}),q=Object.freeze({kpi:Object.freeze({rows:(u,i)=>u.setRows(Array.isArray(i)?i:[])}),kanban:Object.freeze({rows:(u,i)=>u.setRows(Array.isArray(i)?i:[]),quickFilter:(u,i)=>u.setQuickFilter(typeof i=="string"?i:""),sprint:(u,i)=>u.setSprint(i),epic:(u,i)=>u.setEpic(i),loading:(u,i)=>u.setLoading(!!i),error:(u,i)=>u.setError(i??null)}),gantt:Object.freeze({tasks:(u,i)=>u.setTasks(Array.isArray(i)?i:[]),dependencies:(u,i)=>u.setDependencies(Array.isArray(i)?i:[])}),tabs:Object.freeze({active:(u,i)=>{typeof i=="string"&&u.activate(i)}}),chart:Object.freeze({}),layout:Object.freeze({})}),Y=Object.freeze({chart:"update"});function z(u){return`on${String(u).split(":").map(f=>f.charAt(0).toUpperCase()+f.slice(1)).join("")}`}const x=Object.freeze(Object.fromEntries(Object.entries(C).map(([u,i])=>[u,Object.freeze(Object.fromEntries(i.map(f=>[z(f),f])))])));function P(u,i){const f=x[u]||{},G=q[u]||{},L={},j={},T={};for(const[$,B]of Object.entries(i||{})){if(Object.hasOwn(f,$)){T[$]=B;continue}if(Object.hasOwn(G,$)){j[$]=B,L[$]=B;continue}L[$]=B}return{config:L,live:j,handlers:T}}function s(u){const i=String(u.viewer),f=u.mount,G=u.name||i;if(typeof f!="function")throw new TypeError(`createViewerController needs a mount factory for "${i}"; pass the module's own factory in, e.g. { createKPI } from lattice-grid/modules/kpi.`);const L=P(i,u.props||{}),j=f(u.element,{...L.config});if(!j||typeof j!="object")throw new TypeError(`the ${G} factory returned no instance; nothing can be driven.`);let T=L.handlers,$=L.config;const B={...L.live},D=[];if(typeof j.on=="function")for(const F of C[i]||[]){const S=z(F),K=j.on(F,W=>{const A=T[S];typeof A=="function"&&A(W)});typeof K=="function"&&D.push(K)}const _=Y[i],V=q[i]||{};let R=!1;return{instance:j,update(F){if(R)return;const S=P(i,F||{});T=S.handlers;const K={};for(const[A,Z]of Object.entries(S.config))Object.is($[A],Z)||(K[A]=Z);if($=S.config,!Object.keys(K).length)return;const W=[];for(const A of Object.keys(K)){const Z=V[A];if(Z){Z(j,K[A]),B[A]=K[A];continue}_&&typeof j[_]=="function"||W.push(A)}if(_&&typeof j[_]=="function"){const A={};for(const Z of Object.keys(K))V[Z]||(A[Z]=K[Z]);Object.keys(A).length&&j[_](A)}W.length&&X(`react.viewer.${i}.mountOnly.${W.join(".")}`,`${G}: ${W.map(A=>`\`${A}\``).join(", ")} changed, but ${G} takes ${W.length===1?"it":"them"} only when the viewer is created. Nothing was applied and the viewer was NOT rebuilt — rebuilding it silently would throw away scroll position, selection and expansion. Give the component a \`key\` that changes when this must take effect, so the rebuild is yours and visible, or drive the instance through the ref.`)},destroy(){if(!R){R=!0;for(const F of D)try{F()}catch{}D.length=0,typeof j.destroy=="function"&&j.destroy()}}}}}),ce("packages/modules/presets/index.js",function(c,U){"use strict";Object.defineProperty(c,"themeFromMui",{enumerable:!0,get:function(){return z}}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return x}});const X=U("packages/core/src/internal/util.js").warnOnce;function C(P,s){if(typeof P!="string")return P;const u=P.trim().match(/^#([0-9a-f]{6})$/i);if(!u)return P;const i=u[1],f=parseInt(i.slice(0,2),16),G=parseInt(i.slice(2,4),16),L=parseInt(i.slice(4,6),16);return`rgba(${f}, ${G}, ${L}, ${s})`}function q(P){const s=P.palette,u=s.mode==="dark";return{"--lattice-background":s.background.default,"--lattice-surface":s.background.paper,"--lattice-surface-alt":u?"#2a2a2a":s.grey[50],"--lattice-border-color":s.divider,"--lattice-border-strong":u?s.grey[600]:s.grey[400],"--lattice-foreground":s.text.primary,"--lattice-foreground-muted":s.text.secondary,"--lattice-header-foreground":s.text.primary,"--lattice-accent":s.primary.main,"--lattice-accent-contrast":s.primary.contrastText,"--lattice-link-color":s.primary.main,"--lattice-selected-background":C(s.primary.main,.12),"--lattice-hovered-background":C(s.text.primary,.06),"--lattice-focus-color":s.primary.main,"--lattice-variant-danger-solid":s.error.main,"--lattice-variant-danger-fill":C(s.error.main,.12),"--lattice-variant-warning-solid":s.warning.main,"--lattice-variant-warning-fill":C(s.warning.main,.12),"--lattice-variant-success-solid":s.success.main,"--lattice-variant-success-fill":C(s.success.main,.12),"--lattice-variant-info-solid":s.info.main,"--lattice-variant-info-fill":C(s.info.main,.12),"--lattice-radius":`${P.shape.borderRadius}px`,"--lattice-font-family":P.typography.fontFamily,"--lattice-font-size":`${P.typography.body2.fontSize}`,"--lattice-header-font-weight":String(P.typography.fontWeightMedium)}}function Y(P){return`.lattice {
|
|
7
7
|
${Object.entries(P).map(([u,i])=>` ${u}: ${i};`).join(`
|
|
8
8
|
`)}
|
|
9
9
|
}
|