@zealsolutions/zeal-ui 1.0.0-alpha.367 → 1.0.0-alpha.369

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.
@@ -30,16 +30,16 @@ function N(e) {
30
30
  function H(e, t, i, n, r, a, l) {
31
31
  let u = n, s = a, d = 0, c = {}, p;
32
32
  for (let o = n; o < r; o++) {
33
- const _ = {}, g = e[o], h = i[g];
34
- for (let R = 0, L = h.length; R < L; R++) {
35
- const b = h[R];
36
- if (b < a)
33
+ const _ = {}, g = e[o], b = i[g];
34
+ for (let R = 0, L = b.length; R < L; R++) {
35
+ const h = b[R];
36
+ if (h < a)
37
37
  continue;
38
- if (b >= l)
38
+ if (h >= l)
39
39
  break;
40
- c[b - 1] == null && (c[b - 1] = 0);
41
- const k = c[b - 1] + 1;
42
- _[b] = k, k > d && (u = o - k + 1, s = b - k + 1, d = k);
40
+ c[h - 1] == null && (c[h - 1] = 0);
41
+ const k = c[h - 1] + 1;
42
+ _[h] = k, k > d && (u = o - k + 1, s = h - k + 1, d = k);
43
43
  }
44
44
  c = _;
45
45
  }
@@ -82,13 +82,13 @@ function z(e, t) {
82
82
  }, l = $(e, t);
83
83
  l.push(new O(e.length, t.length, 0));
84
84
  for (let c = 0, p = l.length; c < p; c++) {
85
- const o = l[c], _ = i === o.start_in_before, g = n === o.start_in_after, h = a[[_, g].toString()];
86
- h !== "none" && r.push({
87
- action: h,
85
+ const o = l[c], _ = i === o.start_in_before, g = n === o.start_in_after, b = a[[_, g].toString()];
86
+ b !== "none" && r.push({
87
+ action: b,
88
88
  start_in_before: i,
89
- end_in_before: h !== "insert" ? o.start_in_before - 1 : void 0,
89
+ end_in_before: b !== "insert" ? o.start_in_before - 1 : void 0,
90
90
  start_in_after: n,
91
- end_in_after: h !== "delete" ? o.start_in_after - 1 : void 0
91
+ end_in_after: b !== "delete" ? o.start_in_after - 1 : void 0
92
92
  }), o.length !== 0 && r.push({
93
93
  action: "equal",
94
94
  start_in_before: o.start_in_before,
@@ -166,6 +166,10 @@ const J = {
166
166
  // wire key "SOPCode" (SopReadService.GetSop) — see the draft-mode gap note above
167
167
  { label: "Core capabilities", key: "CoreCapabilities" },
168
168
  { label: "Active", key: "IsActive", bool: !0 },
169
+ // SOP-Admin #618: the review date — a publish that only changed it showed nothing in the
170
+ // change log compare. Wire key "ReviewDue" (SopReadService.GetSop); the amend read calls it
171
+ // ReviewDate, so consumers normalise it (and format it as a date) before buildPreview.
172
+ { label: "Review due by", key: "ReviewDue" },
169
173
  { label: "Summary", key: "Summary", rich: !0 },
170
174
  { label: "Generic Provisions", key: "GenericProvisions", rich: !0 },
171
175
  { label: "Further reading", key: "FurtherReading", rich: !0 },
@@ -1,4 +1,4 @@
1
- import { shallowRef as te, ref as T, computed as A, watch as Z, openBlock as t, createElementBlock as n, normalizeClass as k, createElementVNode as l, toDisplayString as h, createCommentVNode as w, createTextVNode as D, createBlock as P, unref as b, normalizeStyle as G, Fragment as S, renderList as R, withModifiers as j, resolveDynamicComponent as E, createVNode as C, withCtx as O, onMounted as oe, renderSlot as z } from "vue";
1
+ import { shallowRef as te, ref as T, computed as A, watch as Z, openBlock as t, createElementBlock as n, normalizeClass as k, createElementVNode as l, toDisplayString as h, createCommentVNode as w, createTextVNode as D, createBlock as P, unref as b, normalizeStyle as q, Fragment as S, renderList as R, withModifiers as E, resolveDynamicComponent as z, createVNode as C, withCtx as O, onMounted as oe, renderSlot as V } from "vue";
2
2
  import { CircleCheckIcon as _, CircleExclamationIcon as ne, ScrewdriverWrenchIcon as re, ChevronLeftIcon as ie, ChevronRightIcon as se, ChevronDownIcon as le, MagnifyingGlassIcon as ce } from "@zealsolutions/zeal-ui/icons";
3
3
  import ae from "../../CircleExclamationIcon-vvAjN3c9.js";
4
4
  import { DropdownMenu as ue, DropdownMenuItem as L } from "@zealsolutions/zeal-ui/menus";
@@ -8,18 +8,18 @@ const me = (e, p, o) => {
8
8
  return x ? typeof x == "function" ? x() : Promise.resolve(x) : new Promise((y, u) => {
9
9
  (typeof queueMicrotask == "function" ? queueMicrotask : setTimeout)(u.bind(null, new Error("Unknown variable dynamic import: " + p + (p.split("/").length !== o ? ". Note that variables only represent file names one level deep." : ""))));
10
10
  });
11
- }, F = /* @__PURE__ */ new Map(), U = /* @__PURE__ */ new Map(), ee = te(0), J = ae, Q = (e, p) => (F.set(e, p), U.delete(e), ee.value += 1, p), ve = (e) => {
12
- if (F.has(e))
13
- return Promise.resolve(F.get(e));
11
+ }, M = /* @__PURE__ */ new Map(), U = /* @__PURE__ */ new Map(), ee = te(0), J = ae, Q = (e, p) => (M.set(e, p), U.delete(e), ee.value += 1, p), ve = (e) => {
12
+ if (M.has(e))
13
+ return Promise.resolve(M.get(e));
14
14
  if (U.has(e))
15
15
  return U.get(e);
16
16
  const p = me(/* @__PURE__ */ Object.assign({ "../icons/ActionCardsIcon.vue": () => import("../../ActionCardsIcon-DVoEt3PI.js"), "../icons/AddressBookIcon.vue": () => import("../../AddressBookIcon-BgzCF09l.js"), "../icons/AlarmClockIcon.vue": () => import("../../AlarmClockIcon-DMGjjgG0.js"), "../icons/AmbulanceDashboardIcon.vue": () => import("../../AmbulanceDashboardIcon-DygVK4uF.js"), "../icons/ArrowDownBigSmallIcon.vue": () => import("../../ArrowDownBigSmallIcon-lZ9pk2em.js"), "../icons/ArrowDownShortWideIcon.vue": () => import("../../ArrowDownShortWideIcon-BLOm1Mre.js"), "../icons/ArrowLeftIcon.vue": () => import("../../ArrowLeftIcon-Cgsy08pY.js"), "../icons/ArrowRightBracketIcon.vue": () => import("../../ArrowRightBracketIcon-D_o7oYWm.js"), "../icons/ArrowRotateLeftIcon.vue": () => import("../../ArrowRotateLeftIcon-C0xWKiJr.js"), "../icons/ArrowRotateRightIcon.vue": () => import("../../ArrowRotateRightIcon-w1VDxH4v.js"), "../icons/ArrowUpShortWideIcon.vue": () => import("../../ArrowUpShortWideIcon-B12ffThe.js"), "../icons/AssessmentsIcon.vue": () => import("../../AssessmentsIcon-gl1lqzM4.js"), "../icons/AssetManagementIcon.vue": () => import("../../AssetManagementIcon-CZpbTi7n.js"), "../icons/AtvOpsIcon.vue": () => import("../../AtvOpsIcon-CjHLrzoV.js"), "../icons/BaOpsIcon.vue": () => import("../../BaOpsIcon-DB-Y_SKE.js"), "../icons/BanIcon.vue": () => import("../../BanIcon-CbthmzAX.js"), "../icons/BarsIcon.vue": () => import("../../BarsIcon-CY8KeVq7.js"), "../icons/BarsSortIcon.vue": () => import("../../BarsSortIcon-C82qc15Z.js"), "../icons/BellIcon.vue": () => import("../../BellIcon-lK5EZXNf.js"), "../icons/BinaryIcon.vue": () => import("../../BinaryIcon-tkr7wetP.js"), "../icons/BoxArchiveIcon.vue": () => import("../../BoxArchiveIcon-B4_zsjvg.js"), "../icons/CalendarIcon.vue": () => import("../../CalendarIcon-DjSv5Y23.js"), "../icons/CalendarWeekIcon.vue": () => import("../../CalendarWeekIcon-CB4Z1TI4.js"), "../icons/CanvasIcon.vue": () => import("../../CanvasIcon-DujLyvWA.js"), "../icons/CartCirclePlusIcon.vue": () => import("../../CartCirclePlusIcon-G5cxd3cI.js"), "../icons/CartCircleXMarkIcon.vue": () => import("../../CartCircleXMarkIcon-DzHSQZgf.js"), "../icons/ChangeManagementIcon.vue": () => import("../../ChangeManagementIcon-BA89LgWl.js"), "../icons/ChartMixedUpCircleCurrencyIcon.vue": () => import("../../ChartMixedUpCircleCurrencyIcon-EQo7EVbb.js"), "../icons/ChartPieIcon.vue": () => import("../../ChartPieIcon-BqRF_9mq.js"), "../icons/ChartScatterBubbleIcon.vue": () => import("../../ChartScatterBubbleIcon-N_XXIVAy.js"), "../icons/CheckIcon.vue": () => import("../../CheckIcon-D0-G6sID.js"), "../icons/CheckToSlotIcon.vue": () => import("../../CheckToSlotIcon-Cs83T9dM.js"), "../icons/ChevronDownIcon.vue": () => import("../../ChevronDownIcon-CrC-BSpe.js"), "../icons/ChevronLeftIcon.vue": () => import("../../ChevronLeftIcon-ChE9LoOU.js"), "../icons/ChevronRightIcon.vue": () => import("../../ChevronRightIcon-DknltHiN.js"), "../icons/CircleCheckIcon.vue": () => import("../../CircleCheckIcon-CA15yXgI.js"), "../icons/CircleExclamationIcon.vue": () => import("../../CircleExclamationIcon-vvAjN3c9.js"), "../icons/CircleInfoIcon.vue": () => import("../../CircleInfoIcon-B6-Jx1og.js"), "../icons/CircleStatusIcon.vue": () => import("../../CircleStatusIcon-C4Av0hTY.js"), "../icons/CircleUserIcon.vue": () => import("../../CircleUserIcon-BERzSCQL.js"), "../icons/ClipboardListCheckIcon.vue": () => import("../../ClipboardListCheckIcon-BZlyFoiD.js"), "../icons/ClockThreeIcon.vue": () => import("../../ClockThreeIcon-D836f-XQ.js"), "../icons/ColumnsThreeIcon.vue": () => import("../../ColumnsThreeIcon-FFmylJtj.js"), "../icons/CommentLinesIcon.vue": () => import("../../CommentLinesIcon-vzfGZXs1.js"), "../icons/ConfinedSpaceIcon.vue": () => import("../../ConfinedSpaceIcon-B41rnh-F.js"), "../icons/CorridorCareIcon.vue": () => import("../../CorridorCareIcon-DtlRYipD.js"), "../icons/DiagramSubtaskIcon.vue": () => import("../../DiagramSubtaskIcon-DCSBGD55.js"), "../icons/DownloadIcon.vue": () => import("../../DownloadIcon-DQV6C5Ow.js"), "../icons/DrawCircleIcon.vue": () => import("../../DrawCircleIcon-D8gwcOmI.js"), "../icons/DroneIcon.vue": () => import("../../DroneIcon-BLQyrOAI.js"), "../icons/DroneUasIcon.vue": () => import("../../DroneUasIcon-rmUiyuhO.js"), "../icons/ECUDashboardIcon.vue": () => import("../../ECUDashboardIcon-njF42ISk.js"), "../icons/ECUDiaryIcon.vue": () => import("../../ECUDiaryIcon-Bm5nOSho.js"), "../icons/EDSIcon.vue": () => import("../../EDSIcon-AMFbBj6R.js"), "../icons/ElevatorIcon.vue": () => import("../../ElevatorIcon-DrJ-pkZh.js"), "../icons/EllipsisStrokeVerticalIcon.vue": () => import("../../EllipsisStrokeVerticalIcon-Boej-QsH.js"), "../icons/EnvelopeIcon.vue": () => import("../../EnvelopeIcon-45jlW_J-.js"), "../icons/ExcelIcon.vue": () => import("../../ExcelIcon-DHy8cDC5.js"), "../icons/ExpandIcon.vue": () => import("../../ExpandIcon-CVoLHHsv.js"), "../icons/FileChartColumnIcon.vue": () => import("../../FileChartColumnIcon-CUXA0UIo.js"), "../icons/FileCirclePlusIcon.vue": () => import("../../FileCirclePlusIcon-BPIUVxNH.js"), "../icons/FileExportIcon.vue": () => import("../../FileExportIcon-BUFrkL8u.js"), "../icons/FileInvoiceIcon.vue": () => import("../../FileInvoiceIcon-DTthf77K.js"), "../icons/FilePdfIcon.vue": () => import("../../FilePdfIcon-DXBoTMfq.js"), "../icons/FilesIcon.vue": () => import("../../FilesIcon-NLAyR0HT.js"), "../icons/FilmIcon.vue": () => import("../../FilmIcon-CE9gVpsG.js"), "../icons/FilterCircleXMarkIcon.vue": () => import("../../FilterCircleXMarkIcon-BJDPebzG.js"), "../icons/FilterIcon.vue": () => import("../../FilterIcon-DRVfA14W.js"), "../icons/FlagSwallowtailIcon.vue": () => import("../../FlagSwallowtailIcon-Cyn4dyNg.js"), "../icons/FloppyDiskIcon.vue": () => import("../../FloppyDiskIcon-Cw0-K5K-.js"), "../icons/FolderIcon.vue": () => import("../../FolderIcon-CqU6uofl.js"), "../icons/FolderPlusIcon.vue": () => import("../../FolderPlusIcon-D3qHxSZ_.js"), "../icons/FoldersIcon.vue": () => import("../../FoldersIcon-nngwhzSc.js"), "../icons/GalleryThumbnailsIcon.vue": () => import("../../GalleryThumbnailsIcon-CafNHt1r.js"), "../icons/GearComplexIcon.vue": () => import("../../GearComplexIcon-CEpf_6SO.js"), "../icons/GearsIcon.vue": () => import("../../GearsIcon-BoH1vuST.js"), "../icons/GlobePointerIcon.vue": () => import("../../GlobePointerIcon-CTX_aWSw.js"), "../icons/GraduationCapIcon.vue": () => import("../../GraduationCapIcon-BFBWEjtB.js"), "../icons/GridIcon.vue": () => import("../../GridIcon-H6sKXK2d.js"), "../icons/HandsBubblesIcon.vue": () => import("../../HandsBubblesIcon-DFrgWVYR.js"), "../icons/HazmatIcon.vue": () => import("../../HazmatIcon-CPLZe_1e.js"), "../icons/HcidIcon.vue": () => import("../../HcidIcon-Bl-OeftA.js"), "../icons/HouseIcon.vue": () => import("../../HouseIcon-BxmNyxvv.js"), "../icons/ImageIcon.vue": () => import("../../ImageIcon-jkYGKPiB.js"), "../icons/IncidentCentreIcon.vue": () => import("../../IncidentCentreIcon-BivSQikQ.js"), "../icons/IncidentRecordingIcon.vue": () => import("../../IncidentRecordingIcon-CBZ53akp.js"), "../icons/LIDIcon.vue": () => import("../../LIDIcon-COK3SSxJ.js"), "../icons/LifeRingIcon.vue": () => import("../../LifeRingIcon-BfoL25Bs.js"), "../icons/LightEmergencyOnIcon.vue": () => import("../../LightEmergencyOnIcon-DapDPOcV.js"), "../icons/LightFilmCirclePlusIcon.vue": () => import("../../LightFilmCirclePlusIcon-BONccXvN.js"), "../icons/ListRadioIcon.vue": () => import("../../ListRadioIcon-gmE_fzgA.js"), "../icons/ListTreeIcon.vue": () => import("../../ListTreeIcon-DMhYL_id.js"), "../icons/LockKeyholeIcon.vue": () => import("../../LockKeyholeIcon-M6F8rvn1.js"), "../icons/MagnifyingGlassIcon.vue": () => import("../../MagnifyingGlassIcon-ChYNIA-H.js"), "../icons/MapLocationDotIcon.vue": () => import("../../MapLocationDotIcon-DnfuF78q.js"), "../icons/MassCasualtyIcon.vue": () => import("../../MassCasualtyIcon-BT77dR9v.js"), "../icons/McvIcon.vue": () => import("../../McvIcon-BwYxt18h.js"), "../icons/MemoCircleInfoIcon.vue": () => import("../../MemoCircleInfoIcon-BlwKM09z.js"), "../icons/MtaIcon.vue": () => import("../../MtaIcon-Ce1CRjSv.js"), "../icons/NACCIcon.vue": () => import("../../NACCIcon-Dxs2xXhX.js"), "../icons/NARUDiaryIcon.vue": () => import("../../NARUDiaryIcon-BpjRMYLV.js"), "../icons/NotebookIcon.vue": () => import("../../NotebookIcon-SG3po-jP.js"), "../icons/NotificationIcon.vue": () => import("../../NotificationIcon-BqK4xBPK.js"), "../icons/NxgenPpeIcon.vue": () => import("../../NxgenPpeIcon-Wgryynup.js"), "../icons/ObjectColumnIcon.vue": () => import("../../ObjectColumnIcon-CxAILX7x.js"), "../icons/OperationalIcon.vue": () => import("../../OperationalIcon-e3NUbsC-.js"), "../icons/PdfIcon.vue": () => import("../../PdfIcon-C6jEHH_e.js"), "../icons/PencilIcon.vue": () => import("../../PencilIcon-B-Jl71yl.js"), "../icons/PhoneIcon.vue": () => import("../../PhoneIcon-CTVTNYc-.js"), "../icons/PodcastIcon.vue": () => import("../../PodcastIcon-Cb_mKKJA.js"), "../icons/PptIcon.vue": () => import("../../PptIcon-DHu5hT4-.js"), "../icons/PresentationIcon.vue": () => import("../../PresentationIcon-DZCQn354.js"), "../icons/PrpsIcon.vue": () => import("../../PrpsIcon-6Oi2vz3-.js"), "../icons/PuzzleIcon.vue": () => import("../../PuzzleIcon-CrfUdlft.js"), "../icons/RadiationIcon.vue": () => import("../../RadiationIcon-BYbqFtwp.js"), "../icons/RectangleVerticalHistoryIcon.vue": () => import("../../RectangleVerticalHistoryIcon-Bd5aXMEw.js"), "../icons/RotateExclamationIcon.vue": () => import("../../RotateExclamationIcon-DTRbZW-G.js"), "../icons/SOPIcon.vue": () => import("../../SOPIcon-Bf_kvdnd.js"), "../icons/SafetyAlertSystemIcon.vue": () => import("../../SafetyAlertSystemIcon-CO2Nfwnt.js"), "../icons/SafetyHeightIcon.vue": () => import("../../SafetyHeightIcon-BaJ_NRPQ.js"), "../icons/ScaleUnbalancedFlipIcon.vue": () => import("../../ScaleUnbalancedFlipIcon-DU-k-Tep.js"), "../icons/ScreenUsersIcon.vue": () => import("../../ScreenUsersIcon-EddBouXr.js"), "../icons/ScrewdriverWrenchIcon.vue": () => import("../../ScrewdriverWrenchIcon-BhtNFcaF.js"), "../icons/SealExclamationIcon.vue": () => import("../../SealExclamationIcon-D-eOlbgS.js"), "../icons/SecuritySupportIcon.vue": () => import("../../SecuritySupportIcon-DftM1Sex.js"), "../icons/ShareFromSquareIcon.vue": () => import("../../ShareFromSquareIcon-C0oKnHP4.js"), "../icons/SlidersIcon.vue": () => import("../../SlidersIcon-DOirWVZO.js"), "../icons/SquareDashedCirclePlusIcon.vue": () => import("../../SquareDashedCirclePlusIcon-CsXEyAth.js"), "../icons/SquareSlidersVerticalIcon.vue": () => import("../../SquareSlidersVerticalIcon-Bku5zH2X.js"), "../icons/TableIcon.vue": () => import("../../TableIcon-uwPPbqM3.js"), "../icons/TableLayoutIcon.vue": () => import("../../TableLayoutIcon-DvoDyX-j.js"), "../icons/TacticalIcon.vue": () => import("../../TacticalIcon-C0YV6OYa.js"), "../icons/TelephoneDirectoryIcon.vue": () => import("../../TelephoneDirectoryIcon-ByWmavfU.js"), "../icons/TimelineArrowIcon.vue": () => import("../../TimelineArrowIcon-DLKL7fEt.js"), "../icons/TrashCanIcon.vue": () => import("../../TrashCanIcon-DK9reURF.js"), "../icons/UnstableTerrainIcon.vue": () => import("../../UnstableTerrainIcon-DEgUJyEe.js"), "../icons/UploadIcon.vue": () => import("../../UploadIcon-DJeF8sKk.js"), "../icons/UserGearIcon.vue": () => import("../../UserGearIcon-AsvyYngF.js"), "../icons/UserGroupIcon.vue": () => import("../../UserGroupIcon-CgsxU3om.js"), "../icons/UserIcon.vue": () => import("../../UserIcon-18Fdcxc7.js"), "../icons/UserLockIcon.vue": () => import("../../UserLockIcon-COP7tSIf.js"), "../icons/UserPenIcon.vue": () => import("../../UserPenIcon-BTz7TA4o.js"), "../icons/UserSlashIcon.vue": () => import("../../UserSlashIcon-D4F1vuC-.js"), "../icons/UserUnlockIcon.vue": () => import("../../UserUnlockIcon-vQKpd81r.js"), "../icons/UsersGearIcon.vue": () => import("../../UsersGearIcon-B0CALrq_.js"), "../icons/UsersIcon.vue": () => import("../../UsersIcon-DmjMjOOp.js"), "../icons/UsersSlashIcon.vue": () => import("../../UsersSlashIcon-BZAhqwjK.js"), "../icons/VanShuttleIcon.vue": () => import("../../VanShuttleIcon-DCWc9V_R.js"), "../icons/WaterOpsIcon.vue": () => import("../../WaterOpsIcon-DG9LJevA.js"), "../icons/WaveFormLinesIcon.vue": () => import("../../WaveFormLinesIcon-ChpDxryS.js"), "../icons/WelfareIcon.vue": () => import("../../WelfareIcon-C9QQdcfy.js"), "../icons/WordIcon.vue": () => import("../../WordIcon-D7lLU9qE.js"), "../icons/XMarkIcon.vue": () => import("../../XMarkIcon-DKJ_--uA.js") }), `../icons/${e}.vue`, 3).then((o) => Q(e, o.default ?? J)).catch((o) => (console.error(`[zeal-ui] Table icon "${e}" could not be loaded.`, o), Q(e, J)));
17
17
  return U.set(e, p), p;
18
- }, pe = (e) => Promise.all([...new Set(e)].map(ve)), fe = (e) => (ee.value, F.has(e)), V = (e) => F.get(e), be = { class: "tooltiptext text-white text-xs text-center !py-[10px] !px-4 !-top-[50px] !z-50 min-w-10 !w-fit left-1/2 transform -translate-x-1/2 font-sans" }, xe = {
18
+ }, pe = (e) => Promise.all([...new Set(e)].map(ve)), fe = (e) => (ee.value, M.has(e)), G = (e) => M.get(e), be = { class: "tooltiptext text-white text-xs text-center !py-[10px] !px-4 !-top-[50px] !z-50 min-w-10 !w-fit left-1/2 transform -translate-x-1/2 font-sans" }, xe = {
19
19
  key: 1,
20
20
  class: "border-b-[1px] border-steel-300 dark:border-line"
21
21
  }, Ie = { class: "w-full flex items-center justify-end" }, he = ["onClick"], ke = {
22
- key: 0,
22
+ key: 1,
23
23
  class: "tooltiptext-left text-white font-semibold text-xs text-center !py-[10px] !px-4 !z-50 min-w-10 !w-fit -translate-y-1/2"
24
24
  }, ge = {
25
25
  key: 1,
@@ -54,13 +54,13 @@ const me = (e, p, o) => {
54
54
  }, Ae = {
55
55
  key: 1,
56
56
  class: "flex justify-center"
57
- }, Be = { class: "bg-success-950 text-white text-xs rounded-full text-center relative tooltip p-0 w-6 h-6 flex items-center justify-center" }, Oe = /* @__PURE__ */ l("span", { class: "absolute inset-0 rounded-full border-2 border-success-500 animate-ping" }, null, -1), Me = { class: "tooltiptext-left text-white font-semibold text-xs text-center !py-[10px] !px-4 !z-50 min-w-10 !w-fit -translate-y-1/2" }, Fe = {
57
+ }, Be = { class: "bg-success-950 text-white text-xs rounded-full text-center relative tooltip p-0 w-6 h-6 flex items-center justify-center" }, Oe = /* @__PURE__ */ l("span", { class: "absolute inset-0 rounded-full border-2 border-success-500 animate-ping" }, null, -1), Fe = { class: "tooltiptext-left text-white font-semibold text-xs text-center !py-[10px] !px-4 !z-50 min-w-10 !w-fit -translate-y-1/2" }, Me = {
58
58
  key: 2,
59
59
  class: "flex justify-center"
60
60
  }, Le = { class: "bg-warning-950 text-white text-xs rounded-full text-center relative tooltip w-6 h-6 flex items-center justify-center" }, Ue = /* @__PURE__ */ l("span", { class: "text-white font-bold text-lg" }, "-", -1), qe = /* @__PURE__ */ l("span", { class: "absolute inset-0 rounded-full border-2 border-warning-950 animate-ping" }, null, -1), Ne = { class: "tooltiptext-left text-white font-semibold text-xs text-center !py-[10px] !px-4 !z-50 min-w-10 !w-fit -translate-y-1/2" }, je = {
61
61
  key: 3,
62
62
  class: "flex justify-center"
63
- }, Ee = { class: "bg-error-950 text-white text-xs rounded-full text-center relative tooltip w-6 h-6 flex items-center justify-center" }, ze = /* @__PURE__ */ l("span", { class: "text-white font-bold text-lg" }, "×", -1), Ve = /* @__PURE__ */ l("span", { class: "absolute inset-0 rounded-full border-2 border-error-500 animate-ping" }, null, -1), Ge = { class: "tooltiptext-left text-white font-semibold text-xs text-center !py-[10px] !px-4 !z-50 min-w-10 !w-fit -translate-y-1/2" }, M = "whitespace-nowrap border-b-[1px] border-steel-300 dark:border-line px-5 py-3 h-[22px]", Y = {
63
+ }, Ee = { class: "bg-error-950 text-white text-xs rounded-full text-center relative tooltip w-6 h-6 flex items-center justify-center" }, ze = /* @__PURE__ */ l("span", { class: "text-white font-bold text-lg" }, "×", -1), Ve = /* @__PURE__ */ l("span", { class: "absolute inset-0 rounded-full border-2 border-error-500 animate-ping" }, null, -1), Ge = { class: "tooltiptext-left text-white font-semibold text-xs text-center !py-[10px] !px-4 !z-50 min-w-10 !w-fit -translate-y-1/2" }, F = "whitespace-nowrap border-b-[1px] border-steel-300 dark:border-line px-5 py-3 h-[22px]", Y = {
64
64
  __name: "TableData",
65
65
  props: {
66
66
  colInfo: {
@@ -85,12 +85,12 @@ const me = (e, p, o) => {
85
85
  emits: ["actionButtonClicked"],
86
86
  setup(e, { emit: p }) {
87
87
  const o = e, x = p, y = T("Copy URL"), u = (m) => m.condition ? m.condition === "IsDraft" ? !!o.rowData.IsDraft : m.condition === "IsArchivable" ? !!o.rowData.IsArchivable : !1 : !0, d = A(() => {
88
- var I, s;
88
+ var I, i;
89
89
  const m = ((I = o.colInfo) == null ? void 0 : I.associations) ?? [];
90
- return (s = o.colInfo) != null && s.hideMissing ? m.filter((g) => (o.data ?? "").includes(g.name.toLowerCase())) : m;
90
+ return (i = o.colInfo) != null && i.hideMissing ? m.filter((g) => (o.data ?? "").includes(g.name.toLowerCase())) : m;
91
91
  }), f = A(() => {
92
- var I, s;
93
- const m = ((I = o.colInfo) == null ? void 0 : I.colType) === "icons" ? (o.colInfo.colIcons ?? []).filter(u).map((g) => g.name) : ((s = o.colInfo) == null ? void 0 : s.colType) === "associations" ? d.value.map((g) => g.icon) : [];
92
+ var I, i;
93
+ const m = ((I = o.colInfo) == null ? void 0 : I.colType) === "icons" ? (o.colInfo.colIcons ?? []).filter(u).map((g) => g.name) : ((i = o.colInfo) == null ? void 0 : i.colType) === "associations" ? d.value.map((g) => g.icon) : [];
94
94
  return [...new Set(m.filter(Boolean))];
95
95
  }), a = A(() => f.value.every(fe));
96
96
  Z(f, (m) => {
@@ -98,9 +98,9 @@ const me = (e, p, o) => {
98
98
  }, { immediate: !0 });
99
99
  const $ = (m, I) => {
100
100
  if (I) {
101
- var s = I.find((g) => g.name == m);
102
- if (s)
103
- return s.colour.toString();
101
+ var i = I.find((g) => g.name == m);
102
+ if (i)
103
+ return i.colour.toString();
104
104
  }
105
105
  return "";
106
106
  }, B = (m) => {
@@ -113,12 +113,12 @@ const me = (e, p, o) => {
113
113
  };
114
114
  return (m, I) => e.colInfo.colType === "text" ? (t(), n("td", {
115
115
  key: 0,
116
- class: k([[M, e.colInfo.colClass, $(e.data, e.colInfo.colourLookup)], "break-words min-w-0 !whitespace-normal"])
116
+ class: k([[F, e.colInfo.colClass, $(e.data, e.colInfo.colourLookup)], "break-words min-w-0 !whitespace-normal"])
117
117
  }, [
118
118
  e.colInfo.IsCopy ? (t(), n("i", {
119
119
  key: 0,
120
120
  class: "fa-solid fa-copy text-app-950 mr-1 cursor-pointer tooltip temp-tooltip",
121
- onClick: I[0] || (I[0] = (s) => B(e.data))
121
+ onClick: I[0] || (I[0] = (i) => B(e.data))
122
122
  }, [
123
123
  l("span", be, h(y.value), 1)
124
124
  ])) : w("", !0),
@@ -134,78 +134,85 @@ const me = (e, p, o) => {
134
134
  ])) : e.colInfo.colType === "colourBox" ? (t(), n("td", {
135
135
  key: 2,
136
136
  class: "border-b-[1px] border-steel-300 dark:border-line",
137
- style: G("background-color:" + e.data)
137
+ style: q("background-color:" + e.data)
138
138
  }, null, 4)) : e.colInfo.colType === "icons" ? (t(), n("td", {
139
139
  key: 3,
140
- class: k([M, e.colInfo.colClass])
140
+ class: k([F, e.colInfo.colClass])
141
141
  }, [
142
142
  l("div", Ie, [
143
- (t(!0), n(S, null, R(e.colInfo.colIcons, (s) => (t(), n("div", {
144
- key: s.name
143
+ (t(!0), n(S, null, R(e.colInfo.colIcons, (i) => (t(), n("div", {
144
+ key: i.name
145
145
  }, [
146
- u(s) ? (t(), n(S, { key: 0 }, [
146
+ u(i) ? (t(), n(S, { key: 0 }, [
147
147
  a.value ? (t(), n("button", {
148
148
  key: 0,
149
- class: "float-left cursor-pointer ml-6 tooltip",
150
- onClick: j((g) => x("actionButtonClicked", s.name), ["stop"])
149
+ class: "relative float-left cursor-pointer ml-6 tooltip",
150
+ onClick: E((g) => x("actionButtonClicked", i.name), ["stop"])
151
151
  }, [
152
- (t(), P(E(b(V)(s.name)), {
152
+ (t(), P(z(b(G)(i.name)), {
153
153
  class: k(["text-[22px]", o.textColour])
154
154
  }, null, 8, ["class"])),
155
- s.tooltip ? (t(), n("span", ke, h(s.tooltip), 1)) : w("", !0)
155
+ i.indicatorField && o.rowData[i.indicatorField] ? (t(), n("span", {
156
+ key: 0,
157
+ "data-severity-dot": "",
158
+ class: "absolute -top-1 -right-1 h-2.5 w-2.5 rounded-full ring-2 ring-white dark:ring-surface-raised",
159
+ style: q({ backgroundColor: o.rowData[i.indicatorField] }),
160
+ "aria-hidden": "true"
161
+ }, null, 4)) : w("", !0),
162
+ i.tooltip ? (t(), n("span", ke, h(i.tooltip), 1)) : w("", !0)
156
163
  ], 8, he)) : (t(), n("span", ge))
157
164
  ], 64)) : w("", !0)
158
165
  ]))), 128))
159
166
  ])
160
167
  ], 2)) : e.colInfo.colType === "associations" ? (t(), n("td", {
161
168
  key: 4,
162
- class: k([M, e.colInfo.colClass])
169
+ class: k([F, e.colInfo.colClass])
163
170
  }, [
164
171
  e.colInfo.hideMissing ? (t(), n("div", Ce, [
165
- (t(!0), n(S, null, R(d.value, (s) => (t(), n("div", {
166
- key: s.name,
172
+ (t(!0), n(S, null, R(d.value, (i) => (t(), n("div", {
173
+ key: i.name,
167
174
  class: "tooltip"
168
175
  }, [
169
176
  a.value ? (t(), n("button", {
170
177
  key: 0,
171
- class: k(["flex justify-center items-center p-1 h-10 w-10 ring-2 ring-offset-1 rounded-full", [s.bgColour, s.ringColour]]),
172
- onClick: j((g) => x("actionButtonClicked", s.name.toLowerCase()), ["stop"])
178
+ class: k(["flex justify-center items-center p-1 h-10 w-10 ring-2 ring-offset-1 rounded-full", [i.bgColour, i.ringColour]]),
179
+ onClick: E((g) => x("actionButtonClicked", i.name.toLowerCase()), ["stop"])
173
180
  }, [
174
- (t(), P(E(b(V)(s.icon)), { class: "text-white text-[22px]" }))
181
+ (t(), P(z(b(G)(i.icon)), { class: "text-white text-[22px]" }))
175
182
  ], 10, ye)) : (t(), n("span", we)),
176
- a.value ? (t(), n("span", Se, h(s.name), 1)) : w("", !0)
183
+ a.value ? (t(), n("span", Se, h(i.name), 1)) : w("", !0)
177
184
  ]))), 128))
178
185
  ])) : (t(), n("div", Te, [
179
- (t(!0), n(S, null, R(d.value, (s) => (t(), n("div", {
180
- key: s.name,
186
+ (t(!0), n(S, null, R(d.value, (i) => (t(), n("div", {
187
+ key: i.name,
181
188
  class: "tooltip"
182
189
  }, [
183
190
  a.value ? (t(), n("button", {
184
191
  key: 0,
185
- class: k(["flex justify-center items-center p-1 h-10 w-10 ring-2 ring-offset-1 rounded-full", e.data.includes(s.name.toLowerCase()) ? [s.bgColour, s.ringColour] : "bg-steel-500 dark:bg-line-strong ring-steel-500 dark:ring-line-strong"]),
186
- onClick: j((g) => x("actionButtonClicked", s.name.toLowerCase()), ["stop"])
192
+ class: k(["flex justify-center items-center p-1 h-10 w-10 ring-2 ring-offset-1 rounded-full", e.data.includes(i.name.toLowerCase()) ? [i.bgColour, i.ringColour] : "bg-steel-500 dark:bg-line-strong ring-steel-500 dark:ring-line-strong"]),
193
+ onClick: E((g) => x("actionButtonClicked", i.name.toLowerCase()), ["stop"])
187
194
  }, [
188
- (t(), P(E(b(V)(s.icon)), { class: "text-white text-[22px]" }))
195
+ (t(), P(z(b(G)(i.icon)), { class: "text-white text-[22px]" }))
189
196
  ], 10, Re)) : (t(), n("span", De)),
190
- a.value ? (t(), n("span", Pe, h(s.name), 1)) : w("", !0)
197
+ a.value ? (t(), n("span", Pe, h(i.name), 1)) : w("", !0)
191
198
  ]))), 128))
192
199
  ]))
193
200
  ], 2)) : e.colInfo.colType === "edsNaruIcon" ? (t(), n("td", {
194
201
  key: 5,
195
- class: k([[M, e.colInfo.colClass, e.data === !0 ? "bg-warning-950" : "bg-steel-600"], "text-white w-12"])
202
+ class: k([[F, e.colInfo.colClass, e.data === !0 ? "bg-warning-950" : "bg-steel-600"], "text-white w-12"])
196
203
  }, [
197
204
  C(b(re))
198
205
  ], 2)) : e.colInfo.colType === "status" ? (t(), n("td", {
199
206
  key: 6,
200
- class: k([M, e.colInfo.colClass])
207
+ class: k([F, e.colInfo.colClass])
201
208
  }, [
202
209
  e.data.id === 0 ? (t(), n("div", $e, "-")) : e.data.id === 1 ? (t(), n("div", Ae, [
203
210
  l("button", Be, [
204
211
  C(b(_), { class: "w-full h-full" }),
205
212
  Oe,
206
- l("span", Me, "Updated on " + h(e.data.lastUpdated), 1)
213
+ l("span", Fe, "Updated on " + h(e.data.lastUpdated), 1)
207
214
  ])
208
- ])) : e.data.id === 2 ? (t(), n("div", Fe, [
215
+ ])) : e.data.id === 2 ? (t(), n("div", Me, [
209
216
  l("button", Le, [
210
217
  Ue,
211
218
  qe,
@@ -440,28 +447,28 @@ const me = (e, p, o) => {
440
447
  T({});
441
448
  const f = T([]), a = T(!0), $ = T(!1), B = T(o.tableData.Result.map((c) => o.tableData.Result.indexOf(c)));
442
449
  oe(() => {
443
- f.value = K(), q(""), a.value = o.activeFilter ? o.activeFilterVal : !1;
450
+ f.value = K(), N(""), a.value = o.activeFilter ? o.activeFilterVal : !1;
444
451
  });
445
452
  const m = (c) => {
446
453
  u.value = c, d.value = 1;
447
- }, I = A(() => Math.ceil(o.tableData.Result.length / u.value)), s = (c) => {
454
+ }, I = A(() => Math.ceil(o.tableData.Result.length / u.value)), i = (c) => {
448
455
  c < 1 || c > I.value || (d.value = c);
449
456
  }, g = A(() => o.tableData.Result.length === 0 ? 0 : (d.value - 1) * u.value + 1), W = A(() => Math.min(o.tableData.Result.length > u.value ? d.value * u.value : o.tableData.Result.length, o.tableData.Result.length)), H = (c) => c ? "text-[" + c + "]" : "text-black-950", X = (c, v) => {
450
- let r = o.tableCols.find((i) => i.tag === "action").colIcons.find((i) => i.name === c) ? o.tableCols.find((i) => i.tag === "action").colIcons.find((i) => i.name === c).callback : o.tableCols.find((i) => i.colType === "associations").associations.find((i) => i.name.toLowerCase() === c).callback;
457
+ let r = o.tableCols.find((s) => s.tag === "action").colIcons.find((s) => s.name === c) ? o.tableCols.find((s) => s.tag === "action").colIcons.find((s) => s.name === c).callback : o.tableCols.find((s) => s.colType === "associations").associations.find((s) => s.name.toLowerCase() === c).callback;
451
458
  y("actionButtonClicked", r, v);
452
459
  }, K = () => {
453
460
  var c = [];
454
461
  for (let v of o.tableData.Result) {
455
462
  let r = "";
456
- for (let i of o.tableCols)
457
- i.colType === "text" && (v[i.tag] === void 0 || v[i.tag] === null || v[i.tag] === "" ? r += "" : r += v[i.tag].toString().toLowerCase() + " ");
463
+ for (let s of o.tableCols)
464
+ s.colType === "text" && (v[s.tag] === void 0 || v[s.tag] === null || v[s.tag] === "" ? r += "" : r += v[s.tag].toString().toLowerCase() + " ");
458
465
  c.push({
459
466
  row: o.tableData.Result.indexOf(v),
460
467
  data: r
461
468
  });
462
469
  }
463
470
  return c;
464
- }, q = (c) => {
471
+ }, N = (c) => {
465
472
  if (c === "") {
466
473
  $.value = !1;
467
474
  return;
@@ -474,14 +481,14 @@ const me = (e, p, o) => {
474
481
  }
475
482
  };
476
483
  return Z(() => o.tableData, (c) => {
477
- c && c.Result && (f.value = K(), q(""));
484
+ c && c.Result && (f.value = K(), N(""));
478
485
  }), (c, v) => (t(), n("div", {
479
486
  ref_key: "root",
480
487
  ref: x,
481
488
  class: "w-full h-full bg-[transparent]"
482
489
  }, [
483
490
  l("div", rt, [
484
- z(c.$slots, "tableTitle")
491
+ V(c.$slots, "tableTitle")
485
492
  ]),
486
493
  l("div", {
487
494
  class: k(["flex ml-[32px] items-center", o.enableSearchBar ? "justify-between" : "justify-end"])
@@ -492,7 +499,7 @@ const me = (e, p, o) => {
492
499
  l("input", {
493
500
  class: "flex-1 border-0 bg-[transparent] pl-0 ring-0 focus:ring-0 outline-none focus:outline-none disabled:placeholder:text-steel-800 dark:disabled:placeholder:text-content-muted disabled:pointer-events-none",
494
501
  placeholder: "Search",
495
- onInput: v[0] || (v[0] = (r) => q(r.target.value))
502
+ onInput: v[0] || (v[0] = (r) => N(r.target.value))
496
503
  }, null, 32)
497
504
  ])
498
505
  ])) : w("", !0),
@@ -504,23 +511,23 @@ const me = (e, p, o) => {
504
511
  l("div", lt, [
505
512
  l("table", ct, [
506
513
  l("thead", null, [
507
- z(c.$slots, "tableHeader", {}, () => [
514
+ V(c.$slots, "tableHeader", {}, () => [
508
515
  l("tr", {
509
516
  class: k(o.backgroundColour)
510
517
  }, [
511
518
  (t(!0), n(S, null, R(e.tableCols, (r) => (t(), n("th", {
512
519
  class: k(["sticky top-0 z-10 border-b-[1px] border-gray-300 px-5 font-semibold text-white w-fit", [o.backgroundColour, e.activeFilter ? "py-1" : "py-3"]]),
513
- style: G("text-align:" + (r.headerAlign ? r.headerAlign : "left"))
520
+ style: q("text-align:" + (r.headerAlign ? r.headerAlign : "left"))
514
521
  }, [
515
522
  l("div", {
516
523
  class: "flex items-center justify-center gap-x-1",
517
- style: G("justify-content:" + (r.headerAlign ? r.headerAlign : "left"))
524
+ style: q("justify-content:" + (r.headerAlign ? r.headerAlign : "left"))
518
525
  }, [
519
526
  l("span", null, h(r.label), 1),
520
527
  r.activeToggle && e.activeFilter ? (t(), P(b(de), {
521
528
  key: 0,
522
529
  modelValue: a.value,
523
- "onUpdate:modelValue": v[2] || (v[2] = (i) => a.value = i),
530
+ "onUpdate:modelValue": v[2] || (v[2] = (s) => a.value = s),
524
531
  class: "rounded-2xl !gap-x-0 bg-surface-raised w-fit"
525
532
  }, null, 8, ["modelValue"])) : w("", !0)
526
533
  ], 4)
@@ -529,28 +536,28 @@ const me = (e, p, o) => {
529
536
  ])
530
537
  ]),
531
538
  l("tbody", null, [
532
- z(c.$slots, "tableBody", {}, () => [
533
- $.value ? (t(!0), n(S, { key: 0 }, R(e.tableData.Result.filter((r, i) => B.value.includes(i) && (a.value && r.IsActive || !a.value && !r.IsActive || !e.activeFilter)), (r) => (t(), n("tr", {
539
+ V(c.$slots, "tableBody", {}, () => [
540
+ $.value ? (t(!0), n(S, { key: 0 }, R(e.tableData.Result.filter((r, s) => B.value.includes(s) && (a.value && r.IsActive || !a.value && !r.IsActive || !e.activeFilter)), (r) => (t(), n("tr", {
534
541
  class: k(["even:bg-steel-100 dark:even:bg-surface-sunken transition duration-300 ease-in-out hover:bg-sop-150 dark:hover:bg-surface-hover border-b-[1px] border-steel-300 dark:border-line", [r.colour ? "*:!" + H(r.colour) : "text-black-950 dark:text-content", e.rowClickAction ? "cursor-pointer" : ""]]),
535
- onClick: (i) => e.rowClickAction ? y("rowClicked", r) : null
542
+ onClick: (s) => e.rowClickAction ? y("rowClicked", r) : null
536
543
  }, [
537
- (t(!0), n(S, null, R(e.tableCols, (i) => (t(), P(Y, {
538
- colInfo: i,
539
- data: r[i.tag],
544
+ (t(!0), n(S, null, R(e.tableCols, (s) => (t(), P(Y, {
545
+ colInfo: s,
546
+ data: r[s.tag],
540
547
  rowData: r,
541
548
  textColour: o.textColour,
542
- onActionButtonClicked: (N) => X(N, r)
549
+ onActionButtonClicked: (j) => X(j, r)
543
550
  }, null, 8, ["colInfo", "data", "rowData", "textColour", "onActionButtonClicked"]))), 256))
544
- ], 10, at))), 256)) : (t(!0), n(S, { key: 1 }, R(e.tableData.Result.filter((r, i) => i >= g.value - 1 && i <= W.value - 1 && (a.value && r.IsActive || !a.value && !r.IsActive || !e.activeFilter)), (r) => (t(), n("tr", {
551
+ ], 10, at))), 256)) : (t(!0), n(S, { key: 1 }, R(e.tableData.Result.filter((r, s) => s >= g.value - 1 && s <= W.value - 1 && (a.value && r.IsActive || !a.value && !r.IsActive || !e.activeFilter)), (r) => (t(), n("tr", {
545
552
  class: k(["even:bg-steel-100 dark:even:bg-surface-sunken transition duration-300 ease-in-out hover:bg-sop-150 dark:hover:bg-surface-hover border-b-[1px] border-steel-300 dark:border-line", [r.colour ? "*:!" + H(r.colour) : "text-black-950 dark:text-content", e.rowClickAction ? "cursor-pointer" : ""]]),
546
- onClick: (i) => e.rowClickAction ? y("rowClicked", r) : null
553
+ onClick: (s) => e.rowClickAction ? y("rowClicked", r) : null
547
554
  }, [
548
- (t(!0), n(S, null, R(e.tableCols, (i) => (t(), P(Y, {
549
- colInfo: i,
550
- data: r[i.tag],
555
+ (t(!0), n(S, null, R(e.tableCols, (s) => (t(), P(Y, {
556
+ colInfo: s,
557
+ data: r[s.tag],
551
558
  rowData: r,
552
559
  textColour: o.textColour,
553
- onActionButtonClicked: (N) => X(N, r)
560
+ onActionButtonClicked: (j) => X(j, r)
554
561
  }, null, 8, ["colInfo", "data", "rowData", "textColour", "onActionButtonClicked"]))), 256))
555
562
  ], 10, ut))), 256))
556
563
  ])
@@ -558,13 +565,13 @@ const me = (e, p, o) => {
558
565
  ])
559
566
  ]),
560
567
  C(Ze, {
561
- noOfResults: $.value ? e.tableData.Result.filter((r, i) => B.value.includes(i)).length : e.tableData.Result.length,
568
+ noOfResults: $.value ? e.tableData.Result.filter((r, s) => B.value.includes(s)).length : e.tableData.Result.length,
562
569
  tableStartIndex: g.value,
563
570
  tableEndIndex: W.value,
564
571
  entriesPerPage: u.value,
565
572
  tablePage: d.value,
566
573
  backgroundColour: o.backgroundColour,
567
- onSetTablePage: v[3] || (v[3] = (r) => s(r)),
574
+ onSetTablePage: v[3] || (v[3] = (r) => i(r)),
568
575
  isSearchResult: $.value
569
576
  }, null, 8, ["noOfResults", "tableStartIndex", "tableEndIndex", "entriesPerPage", "tablePage", "backgroundColour", "isSearchResult"])
570
577
  ], 512));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zealsolutions/zeal-ui",
3
- "version": "1.0.0-alpha.367",
3
+ "version": "1.0.0-alpha.369",
4
4
  "description": "UI library for Zeal Solutions",
5
5
  "author": "Zeal Solutions",
6
6
  "license": "ISC",