@burdenoff/microfe-crewfoundry 2026.802.1 → 2026.830.1

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 (39) hide show
  1. package/dist/crewfoundry/CrewFoundryRoot.d.ts.map +1 -1
  2. package/dist/crewfoundry/CrewFoundryRoot.js +190 -185
  3. package/dist/crewfoundry/CrewFoundryRoot.js.map +1 -1
  4. package/dist/crewfoundry/components/forms/ConfirmDialog.d.ts.map +1 -1
  5. package/dist/crewfoundry/components/forms/ConfirmDialog.js +25 -24
  6. package/dist/crewfoundry/components/forms/ConfirmDialog.js.map +1 -1
  7. package/dist/crewfoundry/components/forms/FormModal.d.ts.map +1 -1
  8. package/dist/crewfoundry/components/forms/FormModal.js +103 -101
  9. package/dist/crewfoundry/components/forms/FormModal.js.map +1 -1
  10. package/dist/crewfoundry/pages/DashboardDashboardPagePage.d.ts.map +1 -1
  11. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js +207 -210
  12. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js.map +1 -1
  13. package/dist/crewfoundry/pages/HiringJobsPagePage.d.ts.map +1 -1
  14. package/dist/crewfoundry/pages/HiringJobsPagePage.js +75 -78
  15. package/dist/crewfoundry/pages/HiringJobsPagePage.js.map +1 -1
  16. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.d.ts.map +1 -1
  17. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js +101 -104
  18. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js.map +1 -1
  19. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.d.ts.map +1 -1
  20. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js +95 -98
  21. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js.map +1 -1
  22. package/dist/crewfoundry/pages/ProjectsResourcingPagePage.d.ts.map +1 -1
  23. package/dist/crewfoundry/pages/ProjectsResourcingPagePage.js +153 -69
  24. package/dist/crewfoundry/pages/ProjectsResourcingPagePage.js.map +1 -1
  25. package/dist/crewfoundry/pages/TeamsTeamsPagePage.d.ts.map +1 -1
  26. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js +101 -104
  27. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js.map +1 -1
  28. package/dist/crewfoundry/store/crewfoundryStore.d.ts +9 -0
  29. package/dist/crewfoundry/store/crewfoundryStore.d.ts.map +1 -1
  30. package/dist/crewfoundry/store/crewfoundryStore.js +41 -32
  31. package/dist/crewfoundry/store/crewfoundryStore.js.map +1 -1
  32. package/dist/shared/hooks/useTr.d.ts +17 -0
  33. package/dist/shared/hooks/useTr.d.ts.map +1 -0
  34. package/dist/shared/hooks/useTr.js +14 -0
  35. package/dist/shared/hooks/useTr.js.map +1 -0
  36. package/dist/utils/pageContext.d.ts.map +1 -1
  37. package/dist/utils/pageContext.js +20 -24
  38. package/dist/utils/pageContext.js.map +1 -1
  39. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTr.d.ts","sourceRoot":"","sources":["../../../src/shared/hooks/useTr.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,KAAK,IAAI,CACvB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KACrC,MAAM,CAcV"}
@@ -0,0 +1,14 @@
1
+ import { useCallback as e } from "react";
2
+ import { useI18n as t } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
3
+ //#region src/shared/hooks/useTr.ts
4
+ function n() {
5
+ let { t: n } = t();
6
+ return e((e, t, r) => {
7
+ let i = n(e), a = i === e ? t : i;
8
+ return r ? Object.entries(r).reduce((e, [t, n]) => e.replace(RegExp(`\\{\\{${t}\\}\\}`, "g"), String(n)), a) : a;
9
+ }, [n]);
10
+ }
11
+ //#endregion
12
+ export { n as useTr };
13
+
14
+ //# sourceMappingURL=useTr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTr.js","names":[],"sources":["../../../src/shared/hooks/useTr.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\n\n/**\n * useTr — translation hook with fallback semantics.\n *\n * Wraps `useI18n().t()` so that when a key has no translation (i.e. the\n * provider returns the key itself), the caller's English fallback is used\n * instead. This keeps consumer call sites consistent and avoids leaking\n * untranslated keys into the UI.\n *\n * Supports optional interpolation params using `{{key}}` placeholders.\n *\n * @example\n * const tr = useTr();\n * return <h1>{tr('crewfoundry.dashboard.title', 'Dashboard')}</h1>;\n * return <p>{tr('crewfoundry.delete.confirm', 'Delete {{count}} items?', { count: 5 })}</p>;\n */\nexport function useTr(): (\n key: string,\n fallback: string,\n params?: Record<string, string | number>\n) => string {\n const { t } = useI18n();\n return useCallback(\n (key: string, fallback: string, params?: Record<string, string | number>): string => {\n const translated = t(key);\n const raw = translated === key ? fallback : translated;\n if (!params) return raw;\n return Object.entries(params).reduce(\n (str, [k, v]) => str.replace(new RegExp(`\\\\{\\\\{${k}\\\\}\\\\}`, 'g'), String(v)),\n raw\n );\n },\n [t]\n );\n}\n"],"mappings":";;;AAkBA,SAAgB,IAIJ;CACV,IAAM,EAAE,SAAM,GAAS;AACvB,QAAO,GACJ,GAAa,GAAkB,MAAqD;EACnF,IAAM,IAAa,EAAE,EAAI,EACnB,IAAM,MAAe,IAAM,IAAW;AAE5C,SADK,IACE,OAAO,QAAQ,EAAO,CAAC,QAC3B,GAAK,CAAC,GAAG,OAAO,EAAI,QAAY,OAAO,SAAS,EAAE,SAAS,IAAI,EAAE,OAAO,EAAE,CAAC,EAC5E,EACD,GAJmB;IAMtB,CAAC,EAAE,CACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"pageContext.d.ts","sourceRoot":"","sources":["../../src/utils/pageContext.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,UAAU,wBAAwB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,WAAW;IAE1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,iBAAiB,IAAI,WAAW,CAoB/C;AAMD,wBAAgB,qCAAqC,CACnD,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,wBAAwB,CAuC1B"}
1
+ {"version":3,"file":"pageContext.d.ts","sourceRoot":"","sources":["../../src/utils/pageContext.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,UAAU,wBAAwB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,WAAW;IAE1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,iBAAiB,IAAI,WAAW,CAoB/C;AA4BD,wBAAgB,qCAAqC,CACnD,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,wBAAwB,CA2B1B"}
@@ -13,35 +13,31 @@ function e() {
13
13
  timestamp: (/* @__PURE__ */ new Date()).toISOString()
14
14
  };
15
15
  }
16
- function t(e, t) {
17
- return t.match(e);
18
- }
16
+ var t = [
17
+ ["hiring/job-details-page", "CREWFOUNDRY_JOB_POSTING"],
18
+ ["hr/employee-profile-page", "CREWFOUNDRY_EMPLOYEE"],
19
+ ["teams/team-detail-page", "CREWFOUNDRY_TEAM"],
20
+ ["teams/team-settings-page", "CREWFOUNDRY_TEAM"],
21
+ ["projects/project-details-page", "CREWFOUNDRY_PROJECT"],
22
+ ["learning/course-details-page", "CREWFOUNDRY_COURSE"],
23
+ ["learning/course-learning-page", "CREWFOUNDRY_COURSE"],
24
+ ["marketplace/service-details-page", "CREWFOUNDRY_SERVICE"]
25
+ ];
19
26
  function n(e, n) {
20
- let r = new URLSearchParams(n);
21
- for (let [n, r] of [
22
- [/^\/crewfoundry\/hiring\/jobs\/([^/]+)$/, "CREWFOUNDRY_JOB_POSTING"],
23
- [/^\/crewfoundry\/hiring\/candidates\/([^/]+)$/, "CREWFOUNDRY_CANDIDATE"],
24
- [/^\/crewfoundry\/hr\/employees\/([^/]+)$/, "CREWFOUNDRY_EMPLOYEE"],
25
- [/^\/crewfoundry\/teams\/([^/]+)$/, "CREWFOUNDRY_TEAM"],
26
- [/^\/crewfoundry\/projects\/([^/]+)$/, "CREWFOUNDRY_PROJECT"],
27
- [/^\/crewfoundry\/learning\/courses\/([^/]+)$/, "CREWFOUNDRY_COURSE"],
28
- [/^\/crewfoundry\/marketplace\/services\/([^/]+)$/, "CREWFOUNDRY_SERVICE"]
29
- ]) {
30
- let i = t(n, e);
31
- if (i) return {
32
- entityType: r,
33
- entityId: i[1],
34
- metadata: { routePattern: n.source }
27
+ let r = new URLSearchParams(n), i = e.split("/").filter(Boolean), a = i.slice(-2).join("/"), o = r.get("id");
28
+ if (o) {
29
+ let e = t.find(([e]) => e === a);
30
+ if (e) return {
31
+ entityType: e[1],
32
+ entityId: o,
33
+ metadata: { route: a }
35
34
  };
36
35
  }
37
- let i = r.get("tab") ?? (() => {
38
- let t = e.split("/").filter(Boolean);
39
- return t.length > 2 ? t[t.length - 1] : void 0;
40
- })();
36
+ let s = r.get("tab") ?? (i.length > 2 ? i[i.length - 1] : void 0);
41
37
  return {
42
- activeTab: i ?? void 0,
38
+ activeTab: s ?? void 0,
43
39
  metadata: {
44
- ...i ? { activeTab: i } : {},
40
+ ...s ? { activeTab: s } : {},
45
41
  ...r.get("selectedId") ? { selectedId: r.get("selectedId") } : {}
46
42
  }
47
43
  };
@@ -1 +1 @@
1
- {"version":3,"file":"pageContext.js","names":[],"sources":["../../src/utils/pageContext.ts"],"sourcesContent":["/**\n * Page context gathering for CrewFoundry.\n *\n * Captures the user's current browser context to be sent alongside every\n * assistant prompt for better AI awareness.\n */\n\ninterface ConversationContextShape {\n entityType?: string;\n entityId?: string;\n activeTab?: string;\n metadata?: Record<string, unknown>;\n}\n\nexport interface PageContext {\n // `currentUrl` matches the agent's allowed-context-key contract.\n currentUrl: string;\n currentPage: string;\n entityType?: string;\n entityId?: string;\n platform: string;\n version: string;\n viewportSize: string;\n userAgent: string;\n timestamp: string;\n}\n\nexport function gatherPageContext(): PageContext {\n const url = window.location.href;\n const pathSegments = window.location.pathname.split('/').filter(Boolean);\n const currentPage = pathSegments.slice(0, 3).join('/') || 'home';\n const entity = resolveCrewFoundryConversationContext(\n window.location.pathname,\n window.location.search\n );\n\n return {\n currentUrl: url,\n currentPage,\n entityType: entity.entityType,\n entityId: entity.entityId,\n platform: 'crewfoundry',\n version: import.meta.env.VITE_APP_VERSION ?? '2026.704.1',\n viewportSize: `${window.innerWidth}x${window.innerHeight}`,\n userAgent: navigator.userAgent,\n timestamp: new Date().toISOString(),\n };\n}\n\nfunction matchPath(pattern: RegExp, pathname: string): RegExpMatchArray | null {\n return pathname.match(pattern);\n}\n\nexport function resolveCrewFoundryConversationContext(\n pathname: string,\n search: string\n): ConversationContextShape {\n const params = new URLSearchParams(search);\n const directMatches: Array<[RegExp, string]> = [\n [/^\\/crewfoundry\\/hiring\\/jobs\\/([^/]+)$/, 'CREWFOUNDRY_JOB_POSTING'],\n [/^\\/crewfoundry\\/hiring\\/candidates\\/([^/]+)$/, 'CREWFOUNDRY_CANDIDATE'],\n [/^\\/crewfoundry\\/hr\\/employees\\/([^/]+)$/, 'CREWFOUNDRY_EMPLOYEE'],\n [/^\\/crewfoundry\\/teams\\/([^/]+)$/, 'CREWFOUNDRY_TEAM'],\n [/^\\/crewfoundry\\/projects\\/([^/]+)$/, 'CREWFOUNDRY_PROJECT'],\n [/^\\/crewfoundry\\/learning\\/courses\\/([^/]+)$/, 'CREWFOUNDRY_COURSE'],\n [/^\\/crewfoundry\\/marketplace\\/services\\/([^/]+)$/, 'CREWFOUNDRY_SERVICE'],\n ];\n\n for (const [pattern, entityType] of directMatches) {\n const match = matchPath(pattern, pathname);\n if (match) {\n return {\n entityType,\n entityId: match[1],\n metadata: {\n routePattern: pattern.source,\n },\n };\n }\n }\n\n const activeTab =\n params.get('tab') ??\n (() => {\n const segments = pathname.split('/').filter(Boolean);\n return segments.length > 2 ? segments[segments.length - 1] : undefined;\n })();\n\n return {\n activeTab: activeTab ?? undefined,\n metadata: {\n ...(activeTab ? { activeTab } : {}),\n ...(params.get('selectedId') ? { selectedId: params.get('selectedId') } : {}),\n },\n };\n}\n"],"mappings":";AA2BA,SAAgB,IAAiC;CAC/C,IAAM,IAAM,OAAO,SAAS,MAEtB,IADe,OAAO,SAAS,SAAS,MAAM,IAAI,CAAC,OAAO,QAAQ,CACvC,MAAM,GAAG,EAAE,CAAC,KAAK,IAAI,IAAI,QACpD,IAAS,EACb,OAAO,SAAS,UAChB,OAAO,SAAS,OACjB;AAED,QAAO;EACL,YAAY;EACZ;EACA,YAAY,EAAO;EACnB,UAAU,EAAO;EACjB,UAAU;EACV,SAA6C;EAC7C,cAAc,GAAG,OAAO,WAAW,GAAG,OAAO;EAC7C,WAAW,UAAU;EACrB,4BAAW,IAAI,MAAM,EAAC,aAAa;EACpC;;AAGH,SAAS,EAAU,GAAiB,GAA2C;AAC7E,QAAO,EAAS,MAAM,EAAQ;;AAGhC,SAAgB,EACd,GACA,GAC0B;CAC1B,IAAM,IAAS,IAAI,gBAAgB,EAAO;AAW1C,MAAK,IAAM,CAAC,GAAS,MAV0B;EAC7C,CAAC,0CAA0C,0BAA0B;EACrE,CAAC,gDAAgD,wBAAwB;EACzE,CAAC,2CAA2C,uBAAuB;EACnE,CAAC,mCAAmC,mBAAmB;EACvD,CAAC,sCAAsC,sBAAsB;EAC7D,CAAC,+CAA+C,qBAAqB;EACrE,CAAC,mDAAmD,sBAAsB;EAC3E,EAEkD;EACjD,IAAM,IAAQ,EAAU,GAAS,EAAS;AAC1C,MAAI,EACF,QAAO;GACL;GACA,UAAU,EAAM;GAChB,UAAU,EACR,cAAc,EAAQ,QACvB;GACF;;CAIL,IAAM,IACJ,EAAO,IAAI,MAAM,WACV;EACL,IAAM,IAAW,EAAS,MAAM,IAAI,CAAC,OAAO,QAAQ;AACpD,SAAO,EAAS,SAAS,IAAI,EAAS,EAAS,SAAS,KAAK,KAAA;KAC3D;AAEN,QAAO;EACL,WAAW,KAAa,KAAA;EACxB,UAAU;GACR,GAAI,IAAY,EAAE,cAAW,GAAG,EAAE;GAClC,GAAI,EAAO,IAAI,aAAa,GAAG,EAAE,YAAY,EAAO,IAAI,aAAa,EAAE,GAAG,EAAE;GAC7E;EACF"}
1
+ {"version":3,"file":"pageContext.js","names":[],"sources":["../../src/utils/pageContext.ts"],"sourcesContent":["/**\n * Page context gathering for CrewFoundry.\n *\n * Captures the user's current browser context to be sent alongside every\n * assistant prompt for better AI awareness.\n */\n\ninterface ConversationContextShape {\n entityType?: string;\n entityId?: string;\n activeTab?: string;\n metadata?: Record<string, unknown>;\n}\n\nexport interface PageContext {\n // `currentUrl` matches the agent's allowed-context-key contract.\n currentUrl: string;\n currentPage: string;\n entityType?: string;\n entityId?: string;\n platform: string;\n version: string;\n viewportSize: string;\n userAgent: string;\n timestamp: string;\n}\n\nexport function gatherPageContext(): PageContext {\n const url = window.location.href;\n const pathSegments = window.location.pathname.split('/').filter(Boolean);\n const currentPage = pathSegments.slice(0, 3).join('/') || 'home';\n const entity = resolveCrewFoundryConversationContext(\n window.location.pathname,\n window.location.search\n );\n\n return {\n currentUrl: url,\n currentPage,\n entityType: entity.entityType,\n entityId: entity.entityId,\n platform: 'crewfoundry',\n version: import.meta.env.VITE_APP_VERSION ?? '2026.704.1',\n viewportSize: `${window.innerWidth}x${window.innerHeight}`,\n userAgent: navigator.userAgent,\n timestamp: new Date().toISOString(),\n };\n}\n\n/**\n * Detail surfaces that identify a single record, keyed by their `<section>/<page>`\n * route.\n *\n * Every detail route in `CrewFoundryRoutes` is a flat two-segment path with the\n * record id in the `id` SEARCH PARAM — `/crewfoundry/hiring/job-details-page?id=…`\n * — never a path segment. Matching is done on the last two path segments rather\n * than an absolute path so the mapping survives the shell mounting the MFE under\n * a different `basePath`.\n *\n * `CREWFOUNDRY_CANDIDATE` is deliberately absent: candidates are selected inside\n * `hiring/candidates-page` without writing an id to the URL, so no navigable\n * location identifies one. Adding a pattern for it would only ever produce a\n * context key that never fires.\n */\nconst ENTITY_ROUTES: ReadonlyArray<readonly [route: string, entityType: string]> = [\n ['hiring/job-details-page', 'CREWFOUNDRY_JOB_POSTING'],\n ['hr/employee-profile-page', 'CREWFOUNDRY_EMPLOYEE'],\n ['teams/team-detail-page', 'CREWFOUNDRY_TEAM'],\n ['teams/team-settings-page', 'CREWFOUNDRY_TEAM'],\n ['projects/project-details-page', 'CREWFOUNDRY_PROJECT'],\n ['learning/course-details-page', 'CREWFOUNDRY_COURSE'],\n ['learning/course-learning-page', 'CREWFOUNDRY_COURSE'],\n ['marketplace/service-details-page', 'CREWFOUNDRY_SERVICE'],\n];\n\nexport function resolveCrewFoundryConversationContext(\n pathname: string,\n search: string\n): ConversationContextShape {\n const params = new URLSearchParams(search);\n const segments = pathname.split('/').filter(Boolean);\n const route = segments.slice(-2).join('/');\n const entityId = params.get('id');\n\n if (entityId) {\n const matched = ENTITY_ROUTES.find(([candidateRoute]) => candidateRoute === route);\n if (matched) {\n return {\n entityType: matched[1],\n entityId,\n metadata: { route },\n };\n }\n }\n\n const activeTab =\n params.get('tab') ?? (segments.length > 2 ? segments[segments.length - 1] : undefined);\n\n return {\n activeTab: activeTab ?? undefined,\n metadata: {\n ...(activeTab ? { activeTab } : {}),\n ...(params.get('selectedId') ? { selectedId: params.get('selectedId') } : {}),\n },\n };\n}\n"],"mappings":";AA2BA,SAAgB,IAAiC;CAC/C,IAAM,IAAM,OAAO,SAAS,MAEtB,IADe,OAAO,SAAS,SAAS,MAAM,IAAI,CAAC,OAAO,QAAQ,CACvC,MAAM,GAAG,EAAE,CAAC,KAAK,IAAI,IAAI,QACpD,IAAS,EACb,OAAO,SAAS,UAChB,OAAO,SAAS,OACjB;AAED,QAAO;EACL,YAAY;EACZ;EACA,YAAY,EAAO;EACnB,UAAU,EAAO;EACjB,UAAU;EACV,SAA6C;EAC7C,cAAc,GAAG,OAAO,WAAW,GAAG,OAAO;EAC7C,WAAW,UAAU;EACrB,4BAAW,IAAI,MAAM,EAAC,aAAa;EACpC;;AAkBH,IAAM,IAA6E;CACjF,CAAC,2BAA2B,0BAA0B;CACtD,CAAC,4BAA4B,uBAAuB;CACpD,CAAC,0BAA0B,mBAAmB;CAC9C,CAAC,4BAA4B,mBAAmB;CAChD,CAAC,iCAAiC,sBAAsB;CACxD,CAAC,gCAAgC,qBAAqB;CACtD,CAAC,iCAAiC,qBAAqB;CACvD,CAAC,oCAAoC,sBAAsB;CAC5D;AAED,SAAgB,EACd,GACA,GAC0B;CAC1B,IAAM,IAAS,IAAI,gBAAgB,EAAO,EACpC,IAAW,EAAS,MAAM,IAAI,CAAC,OAAO,QAAQ,EAC9C,IAAQ,EAAS,MAAM,GAAG,CAAC,KAAK,IAAI,EACpC,IAAW,EAAO,IAAI,KAAK;AAEjC,KAAI,GAAU;EACZ,IAAM,IAAU,EAAc,MAAM,CAAC,OAAoB,MAAmB,EAAM;AAClF,MAAI,EACF,QAAO;GACL,YAAY,EAAQ;GACpB;GACA,UAAU,EAAE,UAAO;GACpB;;CAIL,IAAM,IACJ,EAAO,IAAI,MAAM,KAAK,EAAS,SAAS,IAAI,EAAS,EAAS,SAAS,KAAK,KAAA;AAE9E,QAAO;EACL,WAAW,KAAa,KAAA;EACxB,UAAU;GACR,GAAI,IAAY,EAAE,cAAW,GAAG,EAAE;GAClC,GAAI,EAAO,IAAI,aAAa,GAAG,EAAE,YAAY,EAAO,IAAI,aAAa,EAAE,GAAG,EAAE;GAC7E;EACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/microfe-crewfoundry",
3
- "version": "2026.802.1",
3
+ "version": "2026.830.1",
4
4
  "description": "Burdenoff CrewFoundry Microfrontend",
5
5
  "type": "module",
6
6
  "files": [
@@ -101,7 +101,7 @@
101
101
  "zustand": "^5.0.0"
102
102
  },
103
103
  "publishConfig": {
104
- "access": "restricted"
104
+ "access": "public"
105
105
  },
106
106
  "overrides": {
107
107
  "lodash": ">=4.17.21",