@social-mail/social-mail-client 1.2.287 → 1.2.289

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 (34) hide show
  1. package/dist/admin/AdminAppIndex.pack.js +76 -19
  2. package/dist/admin/AdminAppIndex.pack.js.map +1 -1
  3. package/dist/admin/AdminAppIndex.pack.min.js +4 -3
  4. package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
  5. package/dist/common/fileUrl.d.ts +1 -0
  6. package/dist/common/fileUrl.d.ts.map +1 -1
  7. package/dist/common/fileUrl.js +4 -1
  8. package/dist/common/fileUrl.js.map +1 -1
  9. package/dist/public/store/Store.pack.js +4 -1
  10. package/dist/public/store/Store.pack.js.map +1 -1
  11. package/dist/public/store/Store.pack.min.js +1 -1
  12. package/dist/public/store/Store.pack.min.js.map +1 -1
  13. package/dist/site-editor/editor/HtmlPageEditor.js +1 -1
  14. package/dist/site-editor/editor/HtmlPageEditor.js.map +1 -1
  15. package/dist/site-editor/editor/SelectedElement.js +1 -1
  16. package/dist/site-editor/editor/SelectedElement.js.map +1 -1
  17. package/dist/site-editor/editor/WebSitePageEditor.d.ts.map +1 -1
  18. package/dist/site-editor/editor/WebSitePageEditor.js +30 -2
  19. package/dist/site-editor/editor/WebSitePageEditor.js.map +1 -1
  20. package/dist/tsconfig.tsbuildinfo +1 -1
  21. package/dist/web/AppIndex.pack.js +76 -19
  22. package/dist/web/AppIndex.pack.js.map +1 -1
  23. package/dist/web/AppIndex.pack.min.js +4 -3
  24. package/dist/web/AppIndex.pack.min.js.map +1 -1
  25. package/dist/web/page/files/media/ChooseMediaPage.d.ts +4 -0
  26. package/dist/web/page/files/media/ChooseMediaPage.d.ts.map +1 -1
  27. package/dist/web/page/files/media/ChooseMediaPage.js +40 -14
  28. package/dist/web/page/files/media/ChooseMediaPage.js.map +1 -1
  29. package/package.json +1 -1
  30. package/src/common/fileUrl.ts +4 -0
  31. package/src/site-editor/editor/HtmlPageEditor.tsx +1 -1
  32. package/src/site-editor/editor/SelectedElement.tsx +1 -1
  33. package/src/site-editor/editor/WebSitePageEditor.tsx +31 -4
  34. package/src/web/page/files/media/ChooseMediaPage.tsx +40 -13
@@ -46344,7 +46344,7 @@ System.register(["@web-atoms/core/dist/core/AtomBinder"], function (_export, _co
46344
46344
  this.name = e.tagName.toLowerCase();
46345
46345
  this.parentName = (_a = e.parentElement) === null || _a === void 0 ? void 0 : _a.tagName.toLowerCase();
46346
46346
  const r = e.getBoundingClientRect();
46347
- this.isImage = this.name === "img";
46347
+ this.isImage = this.name === "img" || this.name === "inject" || this.name.startsWith("video");
46348
46348
  this.top = `${r.top + 2}px`;
46349
46349
  this.left = `${r.left + 2}px`;
46350
46350
  this.width = `${r.width}px`;
@@ -49049,7 +49049,7 @@ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dis
49049
49049
  const target = e.target;
49050
49050
  e.preventDefault();
49051
49051
  const element = target.nodeType === Node.ELEMENT_NODE ? target : target.parentElement;
49052
- if (element.tagName === "IMG") {
49052
+ if (/^(IMG|INJECT|VIDEO)$/.test(element.tagName)) {
49053
49053
  this.changeImage().catch(console.error);
49054
49054
  return;
49055
49055
  }
@@ -49285,6 +49285,7 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
49285
49285
  max-width: 200px;
49286
49286
  height: 200px;
49287
49287
  object-fit: contain;
49288
+ margin-top: 3ch;
49288
49289
  }
49289
49290
 
49290
49291
 
@@ -49308,6 +49309,7 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
49308
49309
  this.version = 1;
49309
49310
  this.size = 700;
49310
49311
  this.selectedFiles = [];
49312
+ this.showSize = true;
49311
49313
  }
49312
49314
  init() {
49313
49315
  var _a;
@@ -49319,6 +49321,7 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
49319
49321
  this.selectedFolder = this.parameters.folder;
49320
49322
  this.element.style.minWidth = "90%";
49321
49323
  this.element.style.minHeight = "90%";
49324
+ this.showSize = /^(image|video)\//i.test(accept);
49322
49325
  const selected = this.parameters.selected;
49323
49326
  if ((selected === null || selected === void 0 ? void 0 : selected.tagName) === "IMG") {
49324
49327
  if (/^image\-grid$/i.test((_a = selected.parentElement) === null || _a === void 0 ? void 0 : _a.tagName)) {
@@ -49378,30 +49381,44 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
49378
49381
  accept,
49379
49382
  cancelToken
49380
49383
  })),
49381
- itemRenderer: item => XNode.create("div", {
49382
- class: "media-file"
49383
- }, this.parameters.multiple && XNode.create(SelectorCheckBox, null), XNode.create("label", {
49384
- class: "file-name",
49385
- title: item.name,
49386
- text: item.name
49387
- }), XNode.create("img", {
49388
- class: "file-preview",
49389
- src: apiPath(`/api/files/webp(300)/${item.appFileID}/${item.fileContentID}/${item.name}.300.webp`)
49390
- }))
49384
+ itemRenderer: item => {
49385
+ if (/text\/html/i.test(item.contentType)) {
49386
+ return XNode.create("div", {
49387
+ class: "media-file"
49388
+ }, this.parameters.multiple && XNode.create(SelectorCheckBox, null), XNode.create("label", {
49389
+ class: "file-name",
49390
+ title: item.name,
49391
+ text: item.name
49392
+ }), XNode.create("div", {
49393
+ class: "file-preview",
49394
+ text: "HTML File"
49395
+ }));
49396
+ }
49397
+ return XNode.create("div", {
49398
+ class: "media-file"
49399
+ }, this.parameters.multiple && XNode.create(SelectorCheckBox, null), XNode.create("label", {
49400
+ class: "file-name",
49401
+ title: item.name,
49402
+ text: item.name
49403
+ }), XNode.create("img", {
49404
+ class: "file-preview",
49405
+ src: apiPath(`/api/files/webp(300)/${item.appFileID}/${item.fileContentID}/${item.name}.300.webp`)
49406
+ }));
49407
+ }
49391
49408
  })));
49392
49409
  this.footerRenderer = () => XNode.create("div", {
49393
49410
  "style-display": Bind.oneWay(() => this.selectedFiles.length > 0),
49394
49411
  "data-layout": "row"
49395
- }, XNode.create(SelectAll, {
49412
+ }, this.parameters.multiple && XNode.create(SelectAll, {
49396
49413
  items: Bind.oneWay(() => this.filesRepeater.items),
49397
49414
  selectedItems: this.selectedFiles
49398
- }), XNode.create("input", {
49415
+ }), this.showSize && XNode.create("input", {
49399
49416
  type: "range",
49400
49417
  min: "100",
49401
49418
  max: "2000",
49402
49419
  step: "100",
49403
49420
  value: Bind.twoWaysImmediate(() => this.size)
49404
- }), XNode.create("span", {
49421
+ }), this.showSize && XNode.create("span", {
49405
49422
  text: Bind.oneWay(() => `${this.size}px`)
49406
49423
  }), XNode.create(SaveIconTextButton, {
49407
49424
  "data-click-event": "select-file",
@@ -49414,10 +49431,19 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
49414
49431
  const size = this.size;
49415
49432
  return this.selectedFiles.map(file => ({
49416
49433
  file,
49417
- size
49434
+ size,
49435
+ folder: this.getFolder(file)
49418
49436
  }));
49419
49437
  });
49420
49438
  }
49439
+ getFolder(file) {
49440
+ var _a;
49441
+ if (file.appFileID === this.parameters.folder.appFileID) {
49442
+ return [];
49443
+ }
49444
+ const parent = (_a = file.parent) !== null && _a !== void 0 ? _a : this.selectedFolder;
49445
+ return [...this.getFolder(parent), parent.name];
49446
+ }
49421
49447
  onFilesUploaded() {
49422
49448
  return __awaiter(this, void 0, void 0, function* () {
49423
49449
  this.version++;
@@ -49538,12 +49564,15 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
49538
49564
  System.register(["./apiPath"], function (_export, _context) {
49539
49565
  "use strict";
49540
49566
 
49541
- var apiPath, imageUrl, srcSetUrl, signedImageUrl, signedUrl, storeFileUrl;
49567
+ var apiPath, viewFileUrl, imageUrl, srcSetUrl, signedImageUrl, signedUrl, storeFileUrl;
49542
49568
  return {
49543
49569
  setters: [function (_apiPath) {
49544
49570
  apiPath = _apiPath.apiPath;
49545
49571
  }],
49546
49572
  execute: function () {
49573
+ _export("viewFileUrl", viewFileUrl = (site, file) => {
49574
+ return apiPath(`/api/site/asset/view/${site.appFileID}/${file.appFileID}/${file.fileContentID}/${file.name}`);
49575
+ });
49547
49576
  _export("imageUrl", imageUrl = (site, file, size) => {
49548
49577
  const name = encodeURIComponent(file.name);
49549
49578
  if (!size) {
@@ -49627,12 +49656,40 @@ System.register(["tslib", "@web-atoms/core/dist/core/BindableProperty", "./HtmlP
49627
49656
  }
49628
49657
  changeImage() {
49629
49658
  return __awaiter(this, void 0, void 0, function* () {
49659
+ const {
49660
+ tagName
49661
+ } = this.selection.element;
49662
+ let accept = "image/*";
49663
+ let multiple = true;
49664
+ let isVideo = false;
49665
+ let inject = false;
49666
+ switch (tagName) {
49667
+ case "VIDEO":
49668
+ accept = "video/*";
49669
+ multiple = false;
49670
+ isVideo = true;
49671
+ break;
49672
+ case "INJECT":
49673
+ accept = "text/html";
49674
+ multiple = false;
49675
+ inject = true;
49676
+ break;
49677
+ }
49630
49678
  const files = yield PageNavigator.pushPageForResult(ChooseMediaPage, {
49631
49679
  folder: this.folder,
49632
- accept: "image/*",
49633
- multiple: true,
49680
+ accept,
49681
+ multiple,
49634
49682
  selected: this.selection.element
49635
49683
  });
49684
+ if (inject || isVideo) {
49685
+ const [{
49686
+ file,
49687
+ folder
49688
+ }] = files;
49689
+ const path = "/" + [folder, file.name].join("/");
49690
+ this.selection.element.setAttribute("src", path);
49691
+ return;
49692
+ }
49636
49693
  const images = files.map(({
49637
49694
  file,
49638
49695
  size