@pitcher/canvas-ui 2026.1.22-163808-beta → 2026.1.22-164323-beta

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 (38) hide show
  1. package/canvas-ui.css +21 -21
  2. package/canvas-ui.js +60 -232
  3. package/canvas-ui.js.map +1 -1
  4. package/lib/apps/agenda-selector/composables/move-item-modal.use.d.ts +0 -4
  5. package/lib/apps/browser/components/UploadFilesModal/UploadFilesModal.vue.d.ts +0 -1
  6. package/lib/apps/browser/stores/api.d.ts +0 -9
  7. package/lib/apps/browser/stores/upload.d.ts +0 -4
  8. package/lib/apps/canvas-builder/composables/useCanvas.d.ts +0 -54
  9. package/lib/apps/canvas-builder/composables/useCanvasBlocks.d.ts +0 -12
  10. package/lib/apps/canvas-builder/composables/useCanvasHistory.d.ts +0 -12
  11. package/lib/apps/canvas-builder/composables/useCanvasTheme.d.ts +0 -2
  12. package/lib/apps/canvas-builder/composables/usePopupApps.d.ts +0 -2
  13. package/lib/apps/collection-selector/composables/move-slide-modal.use.d.ts +0 -4
  14. package/lib/apps/ppt-conversion-selector/composables/move-slide-modal.use.d.ts +0 -2
  15. package/lib/apps/ppt-conversion-selector/stores/app.store.d.ts +0 -2
  16. package/lib/components/CFileAttributes/CFileAttributes.vue.d.ts +0 -7
  17. package/lib/sdk/api/HighLevelApi.d.ts +2 -0
  18. package/lib/sdk/api/modules/query.d.ts +44 -1
  19. package/lib/sdk/main.d.ts +6 -0
  20. package/lib/sdk/payload.types.d.ts +55 -0
  21. package/lib/types/launchDarkly.types.d.ts +1 -1
  22. package/locale/de.json +0 -4
  23. package/locale/el.json +0 -4
  24. package/locale/en.json +0 -4
  25. package/locale/es.json +0 -4
  26. package/locale/fr.json +0 -4
  27. package/locale/it.json +0 -4
  28. package/locale/ja.json +0 -4
  29. package/locale/nl.json +0 -4
  30. package/locale/pl.json +0 -4
  31. package/locale/pt-br.json +0 -4
  32. package/locale/pt.json +0 -4
  33. package/locale/th.json +0 -4
  34. package/locale/tr.json +0 -4
  35. package/locale/zh.json +0 -4
  36. package/package.json +1 -1
  37. package/types/openapi/models/FilePermission.d.ts +0 -1
  38. package/types/openapi/models/FilePermissionRequest.d.ts +0 -1
package/canvas-ui.css CHANGED
@@ -1401,18 +1401,18 @@ to {
1401
1401
  height: 100px;
1402
1402
  background: var(--3ad38b36);
1403
1403
  }
1404
- .content-grid-file-item[data-v-660a5765] {
1405
- color: 1px solid var(--3d45b92e);
1404
+ .content-grid-file-item[data-v-2a28d327] {
1405
+ color: 1px solid var(--216a78e5);
1406
1406
  }
1407
- .content-grid-file-item__img[data-v-660a5765] {
1408
- outline: 1px solid var(--3aa83df5);
1407
+ .content-grid-file-item__img[data-v-2a28d327] {
1408
+ outline: 1px solid var(--0b2f6ba8);
1409
1409
  }
1410
- .description[data-v-660a5765] {
1411
- color: var(--6b716cc5);
1410
+ .description[data-v-2a28d327] {
1411
+ color: var(--0be4a3ee);
1412
1412
  }
1413
1413
  .dot-slider {
1414
1414
  .dot {
1415
- &[data-v-660a5765] {
1415
+ &[data-v-2a28d327] {
1416
1416
  border-radius: 50%;
1417
1417
  background-color: rgba(0, 0, 0, 0.3);
1418
1418
  border: 1px solid rgba(255, 255, 255, 0.6);
@@ -1420,10 +1420,10 @@ to {
1420
1420
  box-shadow 0.3s 0,
1421
1421
  background-color 0.3s 0;
1422
1422
  }
1423
- &.dot--active[data-v-660a5765] {
1423
+ &.dot--active[data-v-2a28d327] {
1424
1424
  height: 10px;
1425
1425
  width: 10px;
1426
- background-color: var(--d2ece33e);
1426
+ background-color: var(--31e8c16c);
1427
1427
  }
1428
1428
  }
1429
1429
  }
@@ -1432,15 +1432,15 @@ to {
1432
1432
  }
1433
1433
  .color-text[data-v-79d6b1bf] {
1434
1434
  color: var(--0a685aa6);
1435
- }.content-grid-raw__item[data-v-a4be1f85] {
1436
- color: var(--9e48fc38);
1437
- border: 1px solid var(--2fc288ac);
1435
+ }.content-grid-raw__item[data-v-d0a87ee1] {
1436
+ color: var(--e528c74e);
1437
+ border: 1px solid var(--7182939f);
1438
1438
  }
1439
- .content-grid-raw__item__img[data-v-a4be1f85] {
1440
- outline: 1px solid var(--2fc288aa);
1439
+ .content-grid-raw__item__img[data-v-d0a87ee1] {
1440
+ outline: 1px solid var(--718293a0);
1441
1441
  }
1442
- .content-grid-raw__item__hint[data-v-a4be1f85] {
1443
- color: var(--6a94bacf);
1442
+ .content-grid-raw__item__hint[data-v-d0a87ee1] {
1443
+ color: var(--2007eefa);
1444
1444
  }
1445
1445
  [data-v-440dbcdb] .content-grid-carousel__arrows {
1446
1446
  box-sizing: border-box;
@@ -1469,12 +1469,12 @@ to {
1469
1469
  [data-v-440dbcdb] .content-grid-carousel__button:hover {
1470
1470
  background-color: rgba(0, 0, 0, 0.1);
1471
1471
  }
1472
- .content-grid-list-item[data-v-f1296b1d] {
1472
+ .content-grid-list-item[data-v-1ade5c19] {
1473
1473
  cursor: pointer;
1474
1474
  transition: background-color 0.2s;
1475
1475
  }
1476
- .content-grid-list-item[data-v-f1296b1d]:hover {
1477
- background-color: var(--3f0f3834);
1476
+ .content-grid-list-item[data-v-1ade5c19]:hover {
1477
+ background-color: var(--cd2efdac);
1478
1478
  }
1479
1479
  .content-grid-list[data-v-f00de553] {
1480
1480
  max-height: 600px;
@@ -3072,8 +3072,8 @@ to {
3072
3072
  .panel[data-v-cde3ebee] {
3073
3073
  background-color: var(--5e24e1e8);
3074
3074
  }
3075
- .browser-list-item[data-v-f822adec] {
3076
- border-bottom: 1px solid var(--7438e094);
3075
+ .browser-list-item[data-v-8781de25] {
3076
+ border-bottom: 1px solid var(--10ccf2df);
3077
3077
  }.breadcrumb-area[data-v-41ca4793] .n-button {
3078
3078
  border: 1px solid var(--6b5e9219) !important;
3079
3079
  }
package/canvas-ui.js CHANGED
@@ -79760,12 +79760,6 @@ const _hoisted_3$2_ = {
79760
79760
  key: 1,
79761
79761
  class: "flex gap-4 w-full"
79762
79762
  };
79763
- const _hoisted_4$2o = { class: "flex items-center gap-3" };
79764
- const _hoisted_5$1$ = { class: "text-16px" };
79765
- const _hoisted_6$1H = { class: "flex items-center gap-3" };
79766
- const _hoisted_7$1h = { class: "text-16px" };
79767
- const _hoisted_8$12 = { class: "flex items-center gap-3" };
79768
- const _hoisted_9$S = { class: "text-16px" };
79769
79763
  const _sfc_main$6B = /* @__PURE__ */ defineComponent({
79770
79764
  __name: "CFileAttributes",
79771
79765
  props: {
@@ -79800,8 +79794,6 @@ const _sfc_main$6B = /* @__PURE__ */ defineComponent({
79800
79794
  const labels = {
79801
79795
  sharing: t("canvasUI.browserApp.uploadFilesModal.sharing.label"),
79802
79796
  divisible: t("canvasUI.browserApp.uploadFilesModal.divisible.label"),
79803
- allowExternalSharing: t("canvasUI.files.sharing.allowExternalSharing"),
79804
- allowPrint: t("canvasUI.files.sharing.allowPrint"),
79805
79797
  tags: t("canvasUI.browserApp.uploadFilesModal.tags.label"),
79806
79798
  expiresAtDateTime: t("canvasUI.browserApp.uploadFilesModal.expiresAt.label"),
79807
79799
  accessType: t("canvasUI.browserApp.uploadFilesModal.access.label")
@@ -79922,41 +79914,6 @@ const _sfc_main$6B = /* @__PURE__ */ defineComponent({
79922
79914
  form.value.permissions.can_be_divided = value;
79923
79915
  }
79924
79916
  });
79925
- const sharingValueAsBoolean = computed({
79926
- get: () => {
79927
- return form.value.permissions?.can_share ?? true;
79928
- },
79929
- set: (value) => {
79930
- if (!form.value.permissions) {
79931
- form.value.permissions = {};
79932
- }
79933
- form.value.permissions.can_share = value;
79934
- }
79935
- });
79936
- const printValueAsBoolean = computed({
79937
- get: () => {
79938
- return form.value.permissions?.can_print ?? true;
79939
- },
79940
- set: (value) => {
79941
- form.value.permissions = form.value.permissions || {};
79942
- form.value.permissions.can_print = value;
79943
- form.value.metadata = form.value.metadata || {};
79944
- form.value.metadata.pitcher = form.value.metadata.pitcher || {};
79945
- form.value.metadata.pitcher.can_print = value;
79946
- }
79947
- });
79948
- function onChangeSharingNew(value) {
79949
- sharingValueAsBoolean.value = value;
79950
- if (!value) {
79951
- printValueAsBoolean.value = false;
79952
- }
79953
- }
79954
- function onChangePrint(value) {
79955
- printValueAsBoolean.value = value;
79956
- if (!sharingValueAsBoolean.value) {
79957
- printValueAsBoolean.value = false;
79958
- }
79959
- }
79960
79917
  function isEditingFieldOrNonEmpty(fieldName) {
79961
79918
  if (fieldName === "permissions") {
79962
79919
  return form.value.permissions?.can_share !== void 0 || editingField.value === fieldName;
@@ -80083,7 +80040,7 @@ const _sfc_main$6B = /* @__PURE__ */ defineComponent({
80083
80040
  ]),
80084
80041
  _: 1
80085
80042
  }, 8, ["label"]),
80086
- _ctx.showPermissionSettings && !unref(launchDarkly).enable_file_sharing_print_permissions ? (openBlock(), createBlock(unref(NFormItemGridItem), {
80043
+ _ctx.showPermissionSettings ? (openBlock(), createBlock(unref(NFormItemGridItem), {
80087
80044
  key: 0,
80088
80045
  label: labels.sharing
80089
80046
  }, {
@@ -80188,62 +80145,23 @@ const _sfc_main$6B = /* @__PURE__ */ defineComponent({
80188
80145
  })) : createCommentVNode("", true),
80189
80146
  _ctx.showPermissionSettings && unref(launchDarkly).enable_file_divisible_permission ? (openBlock(), createBlock(unref(NFormItemGridItem), {
80190
80147
  key: 3,
80191
- class: "mx-1",
80192
- "show-label": false,
80193
- span: 2
80194
- }, {
80195
- default: withCtx(() => [
80196
- createElementVNode("div", _hoisted_4$2o, [
80197
- createVNode(_sfc_main$6F, {
80198
- checked: divisibleValueAsBoolean.value,
80199
- "data-field": "divisiblePermission",
80200
- onBlur: _cache[9] || (_cache[9] = ($event) => handleBlur("divisiblePermission")),
80201
- "onUpdate:checked": onChangeDivisible
80202
- }, null, 8, ["checked"]),
80203
- createElementVNode("span", _hoisted_5$1$, toDisplayString(labels.divisible), 1)
80204
- ])
80205
- ]),
80206
- _: 1
80207
- })) : createCommentVNode("", true),
80208
- _ctx.showPermissionSettings && unref(launchDarkly).enable_file_sharing_print_permissions ? (openBlock(), createBlock(unref(NFormItemGridItem), {
80209
- key: 4,
80210
- class: "mx-1",
80211
- "show-label": false,
80212
- span: 2
80148
+ label: labels.divisible
80213
80149
  }, {
80214
80150
  default: withCtx(() => [
80215
- createElementVNode("div", _hoisted_6$1H, [
80216
- createVNode(_sfc_main$6F, {
80217
- checked: sharingValueAsBoolean.value,
80218
- "data-field": "sharingPermission",
80219
- onBlur: _cache[10] || (_cache[10] = ($event) => handleBlur("sharingPermission")),
80220
- "onUpdate:checked": onChangeSharingNew
80221
- }, null, 8, ["checked"]),
80222
- createElementVNode("span", _hoisted_7$1h, toDisplayString(labels.allowExternalSharing), 1)
80223
- ])
80224
- ]),
80225
- _: 1
80226
- })) : createCommentVNode("", true),
80227
- _ctx.showPermissionSettings && unref(launchDarkly).enable_file_sharing_print_permissions ? (openBlock(), createBlock(unref(NFormItemGridItem), {
80228
- key: 5,
80229
- class: "mx-1",
80230
- "show-label": false,
80231
- span: 2
80232
- }, {
80233
- default: withCtx(() => [
80234
- createElementVNode("div", _hoisted_8$12, [
80235
- createVNode(_sfc_main$6F, {
80236
- checked: printValueAsBoolean.value,
80237
- "data-field": "printPermission",
80238
- disabled: !sharingValueAsBoolean.value,
80239
- onBlur: _cache[11] || (_cache[11] = ($event) => handleBlur("printPermission")),
80240
- "onUpdate:checked": onChangePrint
80241
- }, null, 8, ["checked", "disabled"]),
80242
- createElementVNode("span", _hoisted_9$S, toDisplayString(labels.allowPrint), 1)
80243
- ])
80151
+ _ctx.showKeepAsIsPlaceholder && !isEditingFieldOrNonEmpty("divisiblePermission") ? (openBlock(), createBlock(CInputPlaceholder, {
80152
+ key: 0,
80153
+ onClick: _cache[9] || (_cache[9] = ($event) => enableEditing("divisiblePermission", unref(MetadataTemplateFieldTypeEnum).SELECT))
80154
+ })) : (openBlock(), createBlock(_sfc_main$6F, {
80155
+ key: 1,
80156
+ checked: divisibleValueAsBoolean.value,
80157
+ class: "mx-1",
80158
+ "data-field": "divisiblePermission",
80159
+ onBlur: _cache[10] || (_cache[10] = ($event) => handleBlur("divisiblePermission")),
80160
+ "onUpdate:checked": onChangeDivisible
80161
+ }, null, 8, ["checked"]))
80244
80162
  ]),
80245
80163
  _: 1
80246
- })) : createCommentVNode("", true)
80164
+ }, 8, ["label"])) : createCommentVNode("", true)
80247
80165
  ]),
80248
80166
  _: 1
80249
80167
  })
@@ -88454,6 +88372,16 @@ function crmSmartObjectValidationRules(payload) {
88454
88372
  }
88455
88373
  return highLevelApi.API.request("crm_smart_object_validation_rules", payload);
88456
88374
  }
88375
+ function crmSmartObjectLayout(payload) {
88376
+ if (!payload) {
88377
+ return Promise.reject(new Error("Payload is required"));
88378
+ }
88379
+ const objectName = payload.object;
88380
+ if (!objectName || typeof objectName !== "string" || objectName.trim() === "") {
88381
+ return Promise.reject(new Error("Object name is required and must be a non-empty string"));
88382
+ }
88383
+ return highLevelApi.API.request("crm_smart_object_layout", payload);
88384
+ }
88457
88385
  function crmSmartDeleteObjects(payload) {
88458
88386
  if (!payload || !payload.objects || !Array.isArray(payload.objects)) {
88459
88387
  return Promise.reject(new Error("Payload must contain an array of objects"));
@@ -88543,6 +88471,15 @@ function crmDescribe(payload) {
88543
88471
  }
88544
88472
  return highLevelApi.API.request("crm_describe", payload);
88545
88473
  }
88474
+ function crmLayout(payload) {
88475
+ if (!payload) {
88476
+ return Promise.reject(new Error("Payload is required"));
88477
+ }
88478
+ if (!payload.sobject || typeof payload.sobject !== "string" || payload.sobject.trim() === "") {
88479
+ return Promise.reject(new Error("sobject is required and must be a non-empty string"));
88480
+ }
88481
+ return highLevelApi.API.request("crm_layout", payload);
88482
+ }
88546
88483
 
88547
88484
  function getFolders(payload) {
88548
88485
  return this.API.request("get_folders", payload);
@@ -88641,9 +88578,11 @@ const modules = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
88641
88578
  createFolder,
88642
88579
  crmCreate,
88643
88580
  crmDescribe,
88581
+ crmLayout,
88644
88582
  crmQuery,
88645
88583
  crmQueryAdaptive,
88646
88584
  crmSmartDeleteObjects,
88585
+ crmSmartObjectLayout,
88647
88586
  crmSmartObjectMetadata,
88648
88587
  crmSmartObjectValidationRules,
88649
88588
  crmSmartQuery,
@@ -89240,9 +89179,12 @@ const TRUNCATE_LENGTH_TRIGGER = 10;
89240
89179
  const RAW_PAYLOAD_METHODS = [
89241
89180
  "crm_create",
89242
89181
  "crm_upsert",
89182
+ "crm_describe",
89183
+ "crm_layout",
89243
89184
  "crm_smart_query",
89244
89185
  "crm_smart_object_metadata",
89245
89186
  "crm_smart_object_validation_rules",
89187
+ "crm_smart_object_layout",
89246
89188
  "crm_smart_upsert_objects",
89247
89189
  "crm_smart_delete_objects"
89248
89190
  ];
@@ -111398,15 +111340,8 @@ const _sfc_main$4T = /* @__PURE__ */ defineComponent({
111398
111340
  icon: "solid-share-from-square-slash",
111399
111341
  text: unref(t)("canvasUI.files.notShareable")
111400
111342
  }, null, 8, ["background-color", "color", "text"])) : createCommentVNode("", true),
111401
- unref(launchDarkly).enable_file_sharing_print_permissions && _ctx.item?.permissions?.can_share !== false && _ctx.item?.permissions?.can_print === false ? (openBlock(), createBlock(_sfc_main$4W, {
111402
- key: 2,
111403
- "background-color": unref(themeVars).error2,
111404
- color: unref(themeVars).error,
111405
- icon: "print-slash",
111406
- text: unref(t)("canvasUI.files.printingDisabled")
111407
- }, null, 8, ["background-color", "color", "text"])) : createCommentVNode("", true),
111408
111343
  Object.keys(unref(popularityDict))?.length ? (openBlock(), createBlock(_sfc_main$4U, {
111409
- key: 3,
111344
+ key: 2,
111410
111345
  class: "gap-2 mr-2",
111411
111346
  engagement: unref(launchDarkly).show_popularity_icons ? unref(popularityDict)[_ctx.item.id]?.engagement : void 0,
111412
111347
  "is-recommended": !!unref(recommendedSectionIds).includes(_ctx.item.id?.toString()),
@@ -122567,15 +122502,6 @@ const _sfc_main$4e = /* @__PURE__ */ defineComponent({
122567
122502
  const isExpandFileDisabled = computed(() => {
122568
122503
  return props.isDisabled || appProps?.contentType.value === "file" || props.item.content_type !== "pdf" || launchDarkly.value.enable_file_divisible_permission && props.item.permissions?.can_be_divided === false;
122569
122504
  });
122570
- const isPrintable = computed(() => {
122571
- if (!launchDarkly.value.enable_file_sharing_print_permissions) {
122572
- return true;
122573
- }
122574
- if (props.item?.permissions?.can_share === false) {
122575
- return true;
122576
- }
122577
- return props.item?.permissions?.can_print !== false;
122578
- });
122579
122505
  return (_ctx, _cache) => {
122580
122506
  const _directive_tooltip = resolveDirective("tooltip");
122581
122507
  return openBlock(), createElementBlock("div", {
@@ -122716,15 +122642,8 @@ const _sfc_main$4e = /* @__PURE__ */ defineComponent({
122716
122642
  icon: "solid-share-from-square-slash",
122717
122643
  text: unref(t)("canvasUI.files.notShareable")
122718
122644
  }, null, 8, ["background-color", "color", "text"])) : createCommentVNode("", true),
122719
- !isPrintable.value ? (openBlock(), createBlock(_sfc_main$4W, {
122720
- key: 2,
122721
- "background-color": unref(themeVars).error2,
122722
- color: unref(themeVars).error,
122723
- icon: "print-slash",
122724
- text: unref(t)("canvasUI.components.ContentGrid.printingDisabled")
122725
- }, null, 8, ["background-color", "color", "text"])) : createCommentVNode("", true),
122726
122645
  Object.keys(unref(popularityDict))?.length ? (openBlock(), createBlock(_sfc_main$4U, {
122727
- key: 3,
122646
+ key: 2,
122728
122647
  class: "flex gap-2 mr-2",
122729
122648
  engagement: unref(launchDarkly).show_popularity_icons ? unref(popularityDict)[_ctx.data[_ctx.index].id]?.engagement : void 0,
122730
122649
  "is-recommended": !!unref(recommendedSectionIds).includes(_ctx.data[_ctx.index].id),
@@ -141079,10 +140998,10 @@ const _sfc_main$2O = /* @__PURE__ */ defineComponent({
141079
140998
  },
141080
140999
  setup(__props) {
141081
141000
  useCssVars((_ctx) => ({
141082
- "3d45b92e": unref(themeVars).text,
141083
- "3aa83df5": unref(themeVars).primary6,
141084
- "6b716cc5": unref(themeVars).text3,
141085
- "d2ece33e": unref(themeVars).primary
141001
+ "216a78e5": unref(themeVars).text,
141002
+ "0b2f6ba8": unref(themeVars).primary6,
141003
+ "0be4a3ee": unref(themeVars).text3,
141004
+ "31e8c16c": unref(themeVars).primary
141086
141005
  }));
141087
141006
  const props = __props;
141088
141007
  const launchDarkly = inject(
@@ -141090,7 +141009,7 @@ const _sfc_main$2O = /* @__PURE__ */ defineComponent({
141090
141009
  computed(() => ({}))
141091
141010
  );
141092
141011
  const { t } = useI18n();
141093
- const { mode, isEditMode, onDownloadFile, isDefaultDisplayMode, isAdmin, canvasMetadata, fileDataCache } = useCanvas$1();
141012
+ const { mode, isEditMode, onDownloadFile, isDefaultDisplayMode, isAdmin, canvasMetadata } = useCanvas$1();
141094
141013
  const { renderContentType, isFileExpired, isFileExpiring } = useFileDisplayHelpers();
141095
141014
  const { recommendedSectionIds } = useRecommendations();
141096
141015
  const { popularityDict } = useSectionPopularity(computed(() => ({})));
@@ -141098,19 +141017,6 @@ const _sfc_main$2O = /* @__PURE__ */ defineComponent({
141098
141017
  const vTooltip = tooltipDirective;
141099
141018
  const item = computed(() => props.item.type === "file" ? props.item : null);
141100
141019
  const isShareable = computed(() => item.value?.file.permissions?.can_share !== false);
141101
- const isPrintable = computed(() => {
141102
- if (!launchDarkly.value.enable_file_sharing_print_permissions) {
141103
- return true;
141104
- }
141105
- if (!isShareable.value) {
141106
- return true;
141107
- }
141108
- const file = fileDataCache.value.get(item.value?.file.id || "");
141109
- if (file) {
141110
- return file.permissions?.can_print !== false;
141111
- }
141112
- return item.value?.file.permissions?.can_print !== false;
141113
- });
141114
141020
  const isAdvancedSharingEnabled = computed(() => !!launchDarkly.value?.use_advanced_sharing_modal);
141115
141021
  const canDownload = computed(() => {
141116
141022
  if (item.value?.file.permissions?.can_download === false) {
@@ -141305,15 +141211,6 @@ const _sfc_main$2O = /* @__PURE__ */ defineComponent({
141305
141211
  variation: "minimal"
141306
141212
  }, null, 8, ["background-color", "color"])), [
141307
141213
  [unref(vTooltip), unref(t)("canvasUI.components.ContentGrid.sharingDisabled")]
141308
- ]) : createCommentVNode("", true),
141309
- !isPrintable.value ? withDirectives((openBlock(), createBlock(_sfc_main$4W, {
141310
- key: 4,
141311
- "background-color": unref(themeVars).error2,
141312
- color: unref(themeVars).error,
141313
- icon: "print-slash",
141314
- variation: "minimal"
141315
- }, null, 8, ["background-color", "color"])), [
141316
- [unref(vTooltip), unref(t)("canvasUI.components.ContentGrid.printingDisabled")]
141317
141214
  ]) : createCommentVNode("", true)
141318
141215
  ])
141319
141216
  ]),
@@ -141329,7 +141226,7 @@ const _sfc_main$2O = /* @__PURE__ */ defineComponent({
141329
141226
  }
141330
141227
  });
141331
141228
 
141332
- const ContentGridFileItem = /* @__PURE__ */ _export_sfc(_sfc_main$2O, [["__scopeId", "data-v-660a5765"]]);
141229
+ const ContentGridFileItem = /* @__PURE__ */ _export_sfc(_sfc_main$2O, [["__scopeId", "data-v-2a28d327"]]);
141333
141230
 
141334
141231
  const _hoisted_1$2a = { class: "flex items-center flex-col justify-center" };
141335
141232
  const _hoisted_2$1y = { class: "text-center font-400 text-truncate font-size-4 line-height-6 color-text font-normal" };
@@ -141389,10 +141286,10 @@ const _sfc_main$2M = /* @__PURE__ */ defineComponent({
141389
141286
  emits: ["deletedFileClicked"],
141390
141287
  setup(__props, { emit: __emit }) {
141391
141288
  useCssVars((_ctx) => ({
141392
- "9e48fc38": unref(themeVars).text,
141393
- "2fc288ac": unref(themeVars).primary5,
141394
- "2fc288aa": unref(themeVars).primary6,
141395
- "6a94bacf": unref(themeVars).text3
141289
+ "e528c74e": unref(themeVars).text,
141290
+ "7182939f": unref(themeVars).primary5,
141291
+ "718293a0": unref(themeVars).primary6,
141292
+ "2007eefa": unref(themeVars).text3
141396
141293
  }));
141397
141294
  const props = __props;
141398
141295
  const emit = __emit;
@@ -141408,15 +141305,6 @@ const _sfc_main$2M = /* @__PURE__ */ defineComponent({
141408
141305
  const isShareable = computed(() => {
141409
141306
  return props.item.file?.permissions?.can_share !== false;
141410
141307
  });
141411
- const isPrintable = computed(() => {
141412
- if (!launchDarkly.value.enable_file_sharing_print_permissions) {
141413
- return true;
141414
- }
141415
- if (!isShareable.value) {
141416
- return true;
141417
- }
141418
- return props.item.file?.permissions?.can_print !== false;
141419
- });
141420
141308
  const canDownload = computed(() => {
141421
141309
  return mode.value === CanvasBuilderMode.SHARING && isDefaultDisplayMode.value && props.item.file?.permissions?.can_download !== false && canvasMetadata.value?.allow_download !== false;
141422
141310
  });
@@ -141490,15 +141378,6 @@ const _sfc_main$2M = /* @__PURE__ */ defineComponent({
141490
141378
  variation: "minimal"
141491
141379
  }, null, 8, ["background-color", "color"])), [
141492
141380
  [unref(vTooltip), unref(t)("canvasUI.components.ContentGrid.sharingDisabled")]
141493
- ]) : createCommentVNode("", true),
141494
- !isPrintable.value ? withDirectives((openBlock(), createBlock(_sfc_main$4W, {
141495
- key: 1,
141496
- "background-color": unref(themeVars).error2,
141497
- color: unref(themeVars).error,
141498
- icon: "print-slash",
141499
- variation: "minimal"
141500
- }, null, 8, ["background-color", "color"])), [
141501
- [unref(vTooltip), unref(t)("canvasUI.components.ContentGrid.printingDisabled")]
141502
141381
  ]) : createCommentVNode("", true)
141503
141382
  ]),
141504
141383
  canDownload.value ? (openBlock(), createElementBlock("div", _hoisted_5$Q, [
@@ -141514,7 +141393,7 @@ const _sfc_main$2M = /* @__PURE__ */ defineComponent({
141514
141393
  }
141515
141394
  });
141516
141395
 
141517
- const ContentGridItem = /* @__PURE__ */ _export_sfc(_sfc_main$2M, [["__scopeId", "data-v-a4be1f85"]]);
141396
+ const ContentGridItem = /* @__PURE__ */ _export_sfc(_sfc_main$2M, [["__scopeId", "data-v-d0a87ee1"]]);
141518
141397
 
141519
141398
  const _hoisted_1$28 = ["onClick"];
141520
141399
  const _hoisted_2$1w = ["onClick"];
@@ -141661,7 +141540,7 @@ const _sfc_main$2K = /* @__PURE__ */ defineComponent({
141661
141540
  emits: ["deletedFileClicked"],
141662
141541
  setup(__props, { emit: __emit }) {
141663
141542
  useCssVars((_ctx) => ({
141664
- "3f0f3834": unref(themeVars).primary6
141543
+ "cd2efdac": unref(themeVars).primary6
141665
141544
  }));
141666
141545
  const { t } = useI18n();
141667
141546
  const vTooltip = tooltipDirective;
@@ -141785,15 +141664,6 @@ const _sfc_main$2K = /* @__PURE__ */ defineComponent({
141785
141664
  const expiresAt = computed(() => enrichedFile.value.expires_at || "");
141786
141665
  const isExpired = computed(() => isFileExpired(expiresAt.value));
141787
141666
  const isExpiring = computed(() => isFileExpiring(expiresAt.value));
141788
- const isPrintable = computed(() => {
141789
- if (!launchDarkly.value.enable_file_sharing_print_permissions) {
141790
- return true;
141791
- }
141792
- if (enrichedFile.value?.permissions?.can_share === false) {
141793
- return true;
141794
- }
141795
- return enrichedFile.value?.permissions?.can_print !== false;
141796
- });
141797
141667
  const { hasValidThumbnail, handleImageError } = useImageAccessibility({
141798
141668
  thumbnailUrl,
141799
141669
  hasAIEnabled: computed(() => !!launchDarkly.value.enable_ai_generated_thumbnails),
@@ -141922,15 +141792,8 @@ const _sfc_main$2K = /* @__PURE__ */ defineComponent({
141922
141792
  icon: "solid-share-from-square-slash",
141923
141793
  text: unref(t)("canvasUI.files.notShareable")
141924
141794
  }, null, 8, ["background-color", "color", "text"])) : createCommentVNode("", true),
141925
- !isPrintable.value ? (openBlock(), createBlock(_sfc_main$4W, {
141926
- key: 3,
141927
- "background-color": unref(themeVars).error2,
141928
- color: unref(themeVars).error,
141929
- icon: "print-slash",
141930
- text: unref(t)("canvasUI.components.ContentGrid.printingDisabled")
141931
- }, null, 8, ["background-color", "color", "text"])) : createCommentVNode("", true),
141932
141795
  Object.keys(unref(popularityDict))?.length ? (openBlock(), createBlock(_sfc_main$4U, {
141933
- key: 4,
141796
+ key: 3,
141934
141797
  class: "gap-2 mr-2",
141935
141798
  engagement: unref(launchDarkly).show_popularity_icons ? unref(popularityDict)[enrichedFile.value.id]?.engagement : void 0,
141936
141799
  "is-recommended": !!unref(recommendedSectionIds).includes(enrichedFile.value.id?.toString()),
@@ -141972,7 +141835,7 @@ const _sfc_main$2K = /* @__PURE__ */ defineComponent({
141972
141835
  }
141973
141836
  });
141974
141837
 
141975
- const ContentGridListItem = /* @__PURE__ */ _export_sfc(_sfc_main$2K, [["__scopeId", "data-v-f1296b1d"]]);
141838
+ const ContentGridListItem = /* @__PURE__ */ _export_sfc(_sfc_main$2K, [["__scopeId", "data-v-1ade5c19"]]);
141976
141839
 
141977
141840
  const _hoisted_1$26 = { class: "content-grid-list w-full rounded-2 flex bg-base p-4" };
141978
141841
  const _hoisted_2$1u = { class: "flex flex-col w-full" };
@@ -171962,18 +171825,6 @@ const _sfc_main$11 = /*@__PURE__*/defineComponent({
171962
171825
  };
171963
171826
  }
171964
171827
  });
171965
- const isPrintable = computed(() => {
171966
- if (!launchDarkly.value.enable_file_sharing_print_permissions) {
171967
- return true;
171968
- }
171969
-
171970
- // If sharing is disabled, don't show print badge (sharing takes precedence)
171971
- if (props.item.file?.permissions?.can_share === false) {
171972
- return true;
171973
- }
171974
- const fileId = getFileId();
171975
- return files.value?.[fileId]?.permissions?.can_print !== false;
171976
- });
171977
171828
  function handleActions(key) {
171978
171829
  switch (key) {
171979
171830
  case ReorderMenu$1.MoveUp:
@@ -172047,13 +171898,6 @@ const _sfc_main$11 = /*@__PURE__*/defineComponent({
172047
171898
  icon: "solid-share-from-square-slash",
172048
171899
  text: unref(t)('canvasUI.files.notShareable'),
172049
171900
  variation: "extended"
172050
- }, null, 8, ["background-color", "color", "text"])) : createCommentVNode("", true), !isPrintable.value ? (openBlock(), createBlock(_sfc_main$4W, {
172051
- key: 1,
172052
- "background-color": unref(themeVars).error2,
172053
- color: unref(themeVars).error,
172054
- icon: "print-slash",
172055
- text: unref(t)('canvasUI.components.ContentGrid.printingDisabled'),
172056
- variation: "extended"
172057
171901
  }, null, 8, ["background-color", "color", "text"])) : createCommentVNode("", true), createVNode(_sfc_main$4U, {
172058
171902
  class: "flex gap-2 mr-2",
172059
171903
  engagement: unref(launchDarkly).show_popularity_icons ? unref(popularityDict)[unref(files)[getFileId()]?.id]?.engagement : undefined,
@@ -175558,7 +175402,7 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
175558
175402
  },
175559
175403
  setup(__props) {
175560
175404
  useCssVars((_ctx) => ({
175561
- "7438e094": unref(themeVars).primary6
175405
+ "10ccf2df": unref(themeVars).primary6
175562
175406
  }));
175563
175407
  const props = __props;
175564
175408
  const { t } = useI18n();
@@ -175783,15 +175627,8 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
175783
175627
  icon: "solid-share-from-square-slash",
175784
175628
  text: unref(t)("canvasUI.files.notShareable")
175785
175629
  }, null, 8, ["background-color", "color", "text"])) : createCommentVNode("", true),
175786
- unref(launchDarkly).enable_file_sharing_print_permissions && _ctx.item?.permissions?.can_share !== false && _ctx.item?.permissions?.can_print === false ? (openBlock(), createBlock(_sfc_main$4W, {
175787
- key: 2,
175788
- "background-color": unref(themeVars).error2,
175789
- color: unref(themeVars).error,
175790
- icon: "print-slash",
175791
- text: unref(t)("canvasUI.files.printingDisabled")
175792
- }, null, 8, ["background-color", "color", "text"])) : createCommentVNode("", true),
175793
175630
  Object.keys(unref(popularityDict))?.length ? (openBlock(), createBlock(_sfc_main$4U, {
175794
- key: 3,
175631
+ key: 2,
175795
175632
  class: "gap-2 mr-2",
175796
175633
  engagement: unref(launchDarkly).show_popularity_icons ? unref(popularityDict)[_ctx.item.id]?.engagement : void 0,
175797
175634
  "is-recommended": !!unref(recommendedSectionIds).includes(_ctx.item.id?.toString()),
@@ -175812,7 +175649,7 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
175812
175649
  }
175813
175650
  });
175814
175651
 
175815
- const BrowserListItem = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__scopeId", "data-v-f822adec"]]);
175652
+ const BrowserListItem = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__scopeId", "data-v-8781de25"]]);
175816
175653
 
175817
175654
  const _sfc_main$C = /* @__PURE__ */ defineComponent({
175818
175655
  __name: "ContextMenuDropdown",
@@ -178628,19 +178465,14 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
178628
178465
  const fileInputRef = ref(null);
178629
178466
  const form = ref({
178630
178467
  permissions: {
178631
- can_share: true,
178632
- can_print: true
178468
+ can_share: true
178633
178469
  },
178634
178470
  tags: [],
178635
178471
  expiresAtDateTime: pitcherSettings.value?.is_file_expiration_mandatory ? dayjs().add(7, "day").endOf("day").valueOf() : null,
178636
178472
  expiresAtOption: pitcherSettings.value?.is_file_expiration_mandatory ? "at" /* At */ : "never" /* Never */,
178637
178473
  accessType: appName.value === "admin" ? AccessTypeEnum.PUBLIC : AccessTypeEnum.RESTRICTED,
178638
178474
  collaborations: [],
178639
- metadata: {
178640
- pitcher: {
178641
- can_print: true
178642
- }
178643
- }
178475
+ metadata: {}
178644
178476
  });
178645
178477
  function onSelectFiles(selectedFiles) {
178646
178478
  uploadSelectedFiles.value = [...uploadSelectedFiles.value, ...selectedFiles];
@@ -178685,11 +178517,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
178685
178517
  });
178686
178518
  }
178687
178519
  const isPptxFile = getFileExtension(file) === "pptx";
178688
- const fileMetadata = {
178689
- ...metadata.value,
178690
- ...form.value.metadata,
178691
- pitcher: { ...metadata.value?.pitcher, ...form.value.metadata?.pitcher }
178692
- };
178520
+ const fileMetadata = { ...metadata.value };
178693
178521
  if (isPptxFile && shouldShowConvertPptxToHtml.value) {
178694
178522
  fileMetadata.convert_pptx_to_html = convertPptxToHtml.value;
178695
178523
  }