efficient-web-builder 6.0.0 → 7.1.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.
- package/CHANGELOG.md +238 -0
- package/README.md +42 -0
- package/dist/components/ApplyCornersToSiblings.js +1 -1
- package/dist/components/Banner.js +1 -1
- package/dist/components/BlockGapField.js +1 -1
- package/dist/components/BlogPostSource.js +1 -1
- package/dist/components/Breadcrumb.js +1 -1
- package/dist/components/CardShadowField.js +1 -1
- package/dist/components/CategoryBar.js +1 -1
- package/dist/components/ChatSettingsPanel.js +1 -1
- package/dist/components/ClearColoursDialog.js +1 -1
- package/dist/components/CornersField.js +1 -1
- package/dist/components/DocBody.js +5 -5
- package/dist/components/DuplicateToPageMenu.js +1 -1
- package/dist/components/FAQ.js +1 -1
- package/dist/components/Flex.js +1 -1
- package/dist/components/Footprint.js +3 -3
- package/dist/components/HeroImageField.js +1 -1
- package/dist/components/HeroSection.js +2 -2
- package/dist/components/HeroSingle.js +1 -1
- package/dist/components/HeroSlide.js +1 -1
- package/dist/components/HoverEffectField.js +1 -1
- package/dist/components/ImageFocusRow.js +1 -1
- package/dist/components/IntegrationsSection.js +1 -1
- package/dist/components/IntroBleed.js +1 -1
- package/dist/components/KeyFeatures.js +1 -1
- package/dist/components/LocationsGroupedField.js +1 -1
- package/dist/components/MediaUploadField.js +1 -1
- package/dist/components/MultiSelectField.js +1 -1
- package/dist/components/PagesPanel.js +1 -1
- package/dist/components/PartInkControl.js +1 -1
- package/dist/components/PartResetDot.js +1 -1
- package/dist/components/PartSettingsPanel.js +1 -1
- package/dist/components/PartTextBox.js +1 -1
- package/dist/components/PhotographyField.js +1 -1
- package/dist/components/ProcessSteps.js +1 -1
- package/dist/components/SearchSelectField.d.ts +1 -1
- package/dist/components/SearchSelectField.js +1 -1
- package/dist/components/SectionEditor.js +1 -1
- package/dist/components/SectionTextEntries.js +1 -1
- package/dist/components/SectionThemePicker.js +1 -1
- package/dist/components/Series.js +1 -1
- package/dist/components/ShadowColourField.js +1 -1
- package/dist/components/SideSpaceField.js +1 -1
- package/dist/components/SiteFields.js +1 -1
- package/dist/components/SiteWidthField.js +1 -1
- package/dist/components/SlotChildRows.js +1 -1
- package/dist/components/SocialLinksPanel.js +1 -1
- package/dist/components/SourceStatus.js +1 -1
- package/dist/components/SpecStrip.js +1 -1
- package/dist/components/Split.js +1 -1
- package/dist/components/StandaloneSectionEditor.js +1 -1
- package/dist/components/StatsParagraph.js +1 -1
- package/dist/components/StorefrontLinkField.js +1 -1
- package/dist/components/StylesPanel.js +1 -1
- package/dist/components/SwitchToBoxFooter.js +1 -1
- package/dist/components/Testimonials.js +1 -1
- package/dist/components/TextStyleRow.js +1 -1
- package/dist/components/TextStylesField.js +1 -1
- package/dist/components/ThemeCard.js +1 -1
- package/dist/components/ThemeColourField.js +1 -1
- package/dist/components/ThemeField.js +1 -1
- package/dist/components/TickerSection.js +1 -1
- package/dist/components/TickerSettingsPanel.js +1 -1
- package/dist/components/TitleWithButtons.js +1 -1
- package/dist/components/WebsiteScreenParts.js +1 -1
- package/dist/components/WebsiteSettingsPanel.js +1 -1
- package/dist/components/WidthFollowField.js +1 -1
- package/dist/components/preview-devices.js +1 -1
- package/dist/components/storefront-editor.css +93 -123
- package/dist/components/useLocationsTree.js +1 -1
- package/dist/lib/content/ink.d.ts +36 -0
- package/dist/lib/content/ink.js +1 -0
- package/dist/lib/content/section-surface.js +1 -1
- package/dist/lib/editor-words-catalogue.d.ts +1178 -0
- package/dist/lib/editor-words-catalogue.js +11 -0
- package/dist/lib/editor-words.d.ts +15 -0
- package/dist/lib/editor-words.js +1 -0
- package/dist/lib/links/link-picker-setup.js +1 -1
- package/dist/lib/page-rows.d.ts +8 -0
- package/dist/lib/page-rows.js +1 -0
- package/dist/lib/puck/ColourControl.js +1 -1
- package/dist/lib/puck/MarkupToolbar.js +1 -1
- package/dist/lib/puck/apply-card-corners.js +1 -1
- package/dist/lib/puck/blocks/general/Breadcrumb/render.js +1 -1
- package/dist/lib/puck/blocks/general/Cards/render.js +1 -1
- package/dist/lib/puck/blocks/general/CategoryBar/render.js +1 -1
- package/dist/lib/puck/blocks/general/Chart/render.js +2 -2
- package/dist/lib/puck/blocks/general/DocBody/render.js +1 -1
- package/dist/lib/puck/blocks/general/DocMasthead/render.js +1 -1
- package/dist/lib/puck/blocks/general/DocTabs/render.js +1 -1
- package/dist/lib/puck/blocks/general/FAQ/render.js +1 -1
- package/dist/lib/puck/blocks/general/Footprint/render.js +2 -2
- package/dist/lib/puck/blocks/general/KeyFeatures/render.js +1 -1
- package/dist/lib/puck/blocks/general/Logos/render.js +1 -1
- package/dist/lib/puck/blocks/general/Masthead/render.js +1 -1
- package/dist/lib/puck/blocks/general/OrderSummary/render.js +1 -1
- package/dist/lib/puck/blocks/general/PaymentBadges/render.js +1 -1
- package/dist/lib/puck/blocks/general/ProcessSteps/render.js +1 -1
- package/dist/lib/puck/blocks/general/Series/render.js +1 -1
- package/dist/lib/puck/blocks/general/StatsParagraph/render.js +1 -1
- package/dist/lib/puck/blocks/general/Testimonials/render.js +1 -1
- package/dist/lib/puck/blocks/general/Timeline/render.js +2 -2
- package/dist/lib/puck/blocks/general/TimelineTrack/render.js +1 -1
- package/dist/lib/puck/blocks/scaffold.js +1 -1
- package/dist/lib/puck/controls.js +1 -1
- package/dist/lib/puck/footer-block-row-name.js +1 -1
- package/dist/lib/puck/page-root-fields.js +1 -1
- package/dist/lib/puck/theme-swatches.js +1 -1
- package/dist/lib/source-rules/editor-words.d.ts +26 -0
- package/dist/lib/source-rules/editor-words.js +3 -0
- package/dist/lib/source-rules/mirrored-rows-agree.js +1 -1
- package/dist/lib/source-rules/part-style-naming.js +1 -1
- package/dist/lib/source-rules/support/label-extraction.js +2 -2
- package/dist/lib/theme-save-message.js +1 -1
- package/package.json +6 -5
- package/dist/components/HeadingAudit.d.ts +0 -1
- package/dist/components/HeadingAudit.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{jsx as t,jsxs as d,Fragment as
|
|
1
|
+
"use client";import{jsx as t,jsxs as d,Fragment as ke}from"react/jsx-runtime";import{Fragment as Q,useEffect as V,useRef as G}from"react";import{useTreeDrag as X}from"efficient-easel/drag";import{ImageIcon as me,TextLinesIcon as ve,TrashIcon as Z}from"efficient-easel/icons";import{Subtree as b,TreeRow as I,TreeRowAction as ee,TreeSeam as oe}from"efficient-easel/tree";import{useEaselStrings as xe}from"efficient-easel/strings";import{decodeLocationPartId as fe,encodeLocationPartId as he,usePreviewLocationPart as Le}from"./PreviewLocationPartContext.js";import{PUCK_MODE as we}from"./SectionEditor.js";import{say as g,sayCount as Ie}from"../lib/editor-words.js";import{useLocationsFocus as Pe,setLocationsFocus as p}from"../lib/puck/locations-focus.js";import{bucketsOf as ne,moveGroup as te,moveCity as re,addCity as Ce,addGroup as Se,deleteGroup as $e,deleteCity as Te,absCityIndex as ce,groupLabelOf as De,cardKey as se}from"../lib/puck/locations-tree.js";const le="ContactLocations";function Me({size:c=13}){return d("svg",{width:c,height:c,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[t("circle",{cx:"12",cy:"12",r:"9"}),t("path",{d:"M3 12h18M12 3c2.6 2.6 2.6 15.4 0 18M12 3c-2.6 2.6-2.6 15.4 0 18"})]})}function Fe({size:c=13}){return d("svg",{width:c,height:c,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[t("path",{d:"M12 21s6-5 6-10a6 6 0 10-12 0c0 5 6 10 6 10z"}),t("circle",{cx:"12",cy:"11",r:"2"})]})}function Oe({size:c=13}){return d("svg",{width:c,height:c,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[t("path",{d:"M9 4 3 6.5v13L9 17l6 3 6-2.5v-13L15 7z"}),t("path",{d:"M9 4v13M15 7v13"})]})}const T=c=>({parentId:`locations-${c}`,slot:"groups"}),j=(c,k)=>({parentId:`locations-${c}`,slot:`cities:${k}`});function He(c,k){const{readOnly:P,selected:C}=k,f=xe().tree,v=k.data?.content??[],ie=c.kind===we.kind,D=G(null);V(()=>{const o=C?.type===le?String(C.props.id):null;o&&o!==D.current&&p({level:"groups"}),D.current=o},[C?.props.id]);const{selectedLocationPartId:ae,setSelectedLocationPartId:A,setSelectHandler:N}=Le(),s=Pe(),y=(o,e)=>{const r=v[o];r&&k.replace(o,{type:r.type,props:{...r.props,locations:e}})},h=o=>{const e=v[o]?.props?.locations;return Array.isArray(e)?e:[]},R=X({keyOf:o=>`group:${o.si}:${o.index}`,readOnly:!!P,canDrop:(o,e)=>e.parentId===T(o.si).parentId&&e.slot==="groups",onDrop:(o,e)=>{y(o.si,te(h(o.si),o.index,e.index)),s.level==="city"&&p({level:"groups"})},onStep:(o,e)=>{y(o.si,te(h(o.si),o.index,e<0?o.index-1:o.index+2)),s.level==="city"&&p({level:"groups"})}}),M=X({keyOf:o=>`city:${o.si}:${o.group}:${o.index}`,readOnly:!!P,canDrop:(o,e)=>e.parentId===T(o.si).parentId&&e.slot.startsWith("cities:"),onDrop:(o,e)=>{const r=e.slot.slice(7);y(o.si,re(h(o.si),o.group,o.index,r,e.index)),p({level:"group",key:r})},onStep:(o,e)=>{y(o.si,re(h(o.si),o.group,o.index,o.group,e<0?o.index-1:o.index+2)),s.level==="city"&&p({level:"group",key:o.group})}}),z=G(v);z.current=v;const _=G(()=>{});V(()=>{N(o=>{const e=fe(o);if(!e)return;const r=z.current.findIndex(S=>S.props?.id===e.nodeId);r<0||_.current(r,{level:e.part,index:e.index})})},[N]);const l=(o,e)=>{D.current=v[o]?.props?.id??null,k.select(o),p(e),c.reveal();const r=v[o]?.props?.id;typeof r=="string"&&(e.level==="image"||e.level==="map")?A(he(r,e.index,e.level)):A(null),typeof r=="string"&&k.scrollTo(r)};return _.current=l,{renderLocationTree:(o,e,{rowClick:r,isCollapsed:S,toggleCollapse:B})=>{const x=h(e),de=ne(x),L=String(o.props.id),w=ie&&C?.props.id===L,E=n=>t(oe,{...P?{}:R.seam({place:{...T(e),index:n}})},`seam:${L}:groups:${n}`),W=(n,u)=>t(oe,{...P?{}:M.seam({place:{...j(e,n),index:u}})},`seam:${L}:cities:${n}:${u}`);return d(ke,{children:[t(I,{icon:t(ve,{size:13}),name:g("Texts"),words:f,onSelect:()=>l(e,{level:"texts"}),selected:w&&s.level==="texts",rowProps:{onClick:r(()=>l(e,{level:"texts"}))}}),de.map((n,u)=>{const F=`${L}::grp::${n.key}`,K=S(F),pe=w&&s.level==="group"&&s.key===n.key,U=n.name||n.key?De(n.key,n.name):g("Ungrouped"),H={...j(e,n.key),index:n.cards.length},Y=M.row({item:{si:e,group:n.key,index:-1},place:H,into:H,canDrag:!1},{onClick:r(()=>l(e,{level:"group",key:n.key}))}),$=R.row({item:{si:e,index:u},place:{...T(e),index:u}},Y.rowProps);return d(Q,{children:[u===0&&E(0),t(I,{icon:t(Me,{size:13}),name:U,words:f,onSelect:()=>l(e,{level:"group",key:n.key}),selected:pe,draggable:$.draggable,dragging:$.dragging,drop:$.drop??Y.drop,fold:{open:!K,label:g("group"),onToggle:()=>B(F)},actions:t(ee,{kind:"delete",label:Ie("Delete {label} group ({n} city)","Delete {label} group ({n} cities)",n.cards.length,{label:U}),onClick:()=>{y(e,$e(x,n.key)),p({level:"groups"})},children:t(Z,{size:15})}),rowProps:$.rowProps,children:t("span",{className:"es-group-count",children:n.cards.length})}),!K&&d(b,{children:[n.cards.map((m,a)=>{const i=ce(x,n.key,a),ue=w&&s.level==="city"&&s.index===i,O=String(m?.name??"")||g("City"),q=`${L}::city::${se(m)}`,J=S(q),{rowProps:ge,...ye}=M.row({item:{si:e,group:n.key,index:a},place:{...j(e,n.key),index:a}},{onClick:r(()=>l(e,{level:"city",index:i}))});return d(Q,{children:[a===0&&W(n.key,0),t(I,{icon:t(Fe,{size:13}),name:O,words:f,onSelect:()=>l(e,{level:"city",index:i}),selected:ue,...ye,fold:{open:!J,label:O,onToggle:()=>B(q)},actions:t(ee,{kind:"delete",label:g("Delete {name}",{name:O}),onClick:()=>{y(e,Te(x,n.key,a)),p({level:"group",key:n.key})},children:t(Z,{size:15})}),rowProps:ge}),!J&&d(b,{children:[t(I,{icon:t(me,{size:13}),name:g("Image"),words:f,onSelect:()=>l(e,{level:"image",index:i}),selected:w&&s.level==="image"&&s.index===i,rowProps:{onClick:r(()=>l(e,{level:"image",index:i}))}}),t(I,{icon:t(Oe,{size:13}),name:g("Map"),words:f,onSelect:()=>l(e,{level:"map",index:i}),selected:w&&s.level==="map"&&s.index===i,rowProps:{onClick:r(()=>l(e,{level:"map",index:i}))}})]}),W(n.key,a+1)]},se(m))}),d("button",{type:"button",className:"sf-add-card",onClick:()=>{const m=Ce(x,n.key);y(e,m);const a=ne(m).find(i=>i.key===n.key);p(a&&a.cards.length?{level:"city",index:ce(m,n.key,a.cards.length-1)}:{level:"group",key:n.key})},children:[t("span",{className:"sf-plus sf-plus--sm",children:"+"}),g("Add city")]})]}),E(u+1)]},F)}),d("button",{type:"button",className:"sf-add-card",onClick:()=>{const{cards:n,key:u}=Se(x);y(e,n),l(e,{level:"group",key:u})},children:[t("span",{className:"sf-plus sf-plus--sm",children:"+"}),g("Add group")]})]})},sectionPressed:o=>{o?.type===le&&p({level:"groups"})}}}export{le as LOCATIONS_TYPE,He as useLocationsTree};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export declare const SECTION_PALETTE: readonly [{
|
|
2
|
+
readonly role: "bg";
|
|
3
|
+
readonly token: "--bg";
|
|
4
|
+
readonly ink: false;
|
|
5
|
+
}, {
|
|
6
|
+
readonly role: "fg";
|
|
7
|
+
readonly token: "--fg";
|
|
8
|
+
readonly ink: true;
|
|
9
|
+
}, {
|
|
10
|
+
readonly role: "surface";
|
|
11
|
+
readonly token: "--site-surface";
|
|
12
|
+
readonly ink: false;
|
|
13
|
+
}, {
|
|
14
|
+
readonly role: "surface-2";
|
|
15
|
+
readonly token: "--site-surface-2";
|
|
16
|
+
readonly ink: false;
|
|
17
|
+
}, {
|
|
18
|
+
readonly role: "line";
|
|
19
|
+
readonly token: "--site-line";
|
|
20
|
+
readonly ink: true;
|
|
21
|
+
}, {
|
|
22
|
+
readonly role: "muted";
|
|
23
|
+
readonly token: "--fg-dim";
|
|
24
|
+
readonly ink: true;
|
|
25
|
+
}];
|
|
26
|
+
type PaletteEntry = (typeof SECTION_PALETTE)[number];
|
|
27
|
+
type InkEntry = Extract<PaletteEntry, {
|
|
28
|
+
ink: true;
|
|
29
|
+
}>;
|
|
30
|
+
export declare const INK: readonly InkEntry[];
|
|
31
|
+
export type InkRole = InkEntry["role"];
|
|
32
|
+
export type InkSource = Readonly<Record<InkRole, string>>;
|
|
33
|
+
export declare function inkStyle(source: InkSource): Record<string, string>;
|
|
34
|
+
export declare const ON_MEDIA_INK: InkSource;
|
|
35
|
+
export declare const ON_MEDIA_INK_STYLE: Readonly<Record<string, string>>;
|
|
36
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const n=[{role:"bg",token:"--bg",ink:!1},{role:"fg",token:"--fg",ink:!0},{role:"surface",token:"--site-surface",ink:!1},{role:"surface-2",token:"--site-surface-2",ink:!1},{role:"line",token:"--site-line",ink:!0},{role:"muted",token:"--fg-dim",ink:!0}],l=n.filter(e=>e.ink);function i(e){const r={color:e.fg};for(const{role:o,token:t}of l)r[t]=e[o];return r}const f={fg:"var(--overlay-fg)",line:"color-mix(in srgb, var(--overlay-fg) 24%, transparent)",muted:"color-mix(in srgb, var(--overlay-fg) 76%, transparent)"},s=Object.freeze(i(f));export{l as INK,f as ON_MEDIA_INK,s as ON_MEDIA_INK_STYLE,n as SECTION_PALETTE,i as inkStyle};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
import{SECTION_PALETTE as o}from"./ink.js";const r=-1,s="sf-section-accent",C="Color",f=new Set(["CategoryBar","DocTabs"]),i=new Set(["Flex"]),E=0;function a(e){return e===r?null:typeof e=="number"&&Number.isInteger(e)&&e>=0?e:E}function l(e){return e??r}function T(e){const t=`--theme-preset-${e}`,c={"--sf-sec-accent":`var(${t}-accent)`,"--sf-sec-accent-2":`var(${t}-accent-2)`,"--sf-sec-accent-ink":`var(${t}-accent-ink)`};for(const{role:n}of o)c[`--sf-sec-${n}`]=`var(${t}-${n}, var(--theme-${n}))`;return c}function p(e){const t=a(e.sectionAccent);return t===null?null:{className:s,style:T(t)}}export{s as SECTION_ACCENT_CLASS,E as SECTION_ACCENT_DEFAULT,r as SECTION_ACCENT_INHERIT,f as SECTION_THEME_EXCLUDED,C as SECTION_THEME_GROUP_LABEL,i as SECTION_THEME_NESTED_READING,l as nestedAccentValue,a as resolveSectionAccent,T as sectionAccentVars,p as sectionThemeWrap};
|