zesty-io / live-editor Goto Github PK
View Code? Open in Web Editor NEWWebsite/App Overlay Guide for Editing Zesty.io Content
Home Page: https://chrome.google.com/webstore/detail/zestyio-webengine-view-ex/mnkmogppmhhmafgfljgckpkapodofjob
Website/App Overlay Guide for Editing Zesty.io Content
Home Page: https://chrome.google.com/webstore/detail/zestyio-webengine-view-ex/mnkmogppmhhmafgfljgckpkapodofjob
Split out ZestyExplorer component to multiple components in the top level component directory
When loading explorer on a website that is not register or does not have the correct developer settings and security settings.
Much like the Manager, saves should be made after editing all desired fields not just one field at a time to avoid unnecessary versions of content
Implement this tab style, MUI Tabs
A clean way with a WATCH to develop locally without publishing or pushing to CDNJS, or using the zesty explorer chrome extension.
Document this is the README
Remove path column, have a single column which stacks the title and path
Page Title
/path/to/page Open Button
Page Title
/path/to/page Open Button
Page Title
/path/to/page Open Button
Content may differ from unpublished drafts and edits made in the live editor are not reflected in production which can be confusing for the user.
the ability to install with NPM and run the module from local
Example implementation
import LiveEditor from '@zesty-io/live-editor'
<LiveEditor content={content} />
If the content object is passed.
If content is passed in and they are not authenticated, only show three tabs: Code, Navigator, JSON
Change Code to ignore fields api call if not authenticated.
Give option to authenticate (this requires cors update from zesty backend)
Split out content viewer tab into explorer, editor, seo, JSX helper, json
jsx help should include the table of code examples alongside the field names and code to click to copy
Link to edit Schema
Name the model and item working in.
Links to zesty docs
The table should include columns for reach
Reference Name: title
Parsley: {{this.title}}
JSX React: {content.title}
VUE: {{content.title}}
The models/:zuid/fields endpoint will need to to be accessed in the fetch wrapper to get field information.
include - h2 h3 h4 h5 p a chars
make dom report table
change location to bottom of manager link
resource zuid matches page zuid then this is part of the page
group 2 table
page meta start 7
global meta start 8
dom report > table
dom report > add # of chars
2 ..........1
1= edit persmission
Buttons should open new window (target _blank)
Open Content and Open schema? or Go to Content and Go to Schema? or Edit content/schema
I think we also want to pay close attention to the naming. Both buttons Open Manager and Open Schema open the Manager they just open different sections/apps in the Manager. I don’t have any suggestions as to what to name them though
Red close button resembles the "Delete" button in the UI. This should use the MUI icons for Close instead to keep the branded experience seamless across the UI and this extension. https://mui.com/material-ui/material-icons/?query=close&selected=Close
Changes
Bring in theming https://mui.com/material-ui/customization/theming/
Add zesty colors, see example in nextjs project: https://github.com/zesty-io/nextjs-website/blob/main/src/theme/palette.js
Change view port size of website for mobile preview
Shows meta as it is, can edit meta, shows dom report (number of H1s, text of page, links)
Access only the top level meta.web
object, iterate through each into a table format. The goal is to show the user the tags that are available and editable in zesty. Create link to edit like: https://:INSTANCE_ZUID.manager.zesty.io/content/:MODEL_ZUID/:ITEM_ZUID/meta
"type":"item"
"model_name":"homepage"
"model_alternate_name":"Homepage"
"zuid":"7-31209c-g7qsjg"
"createdAt":"2022-03-24 16:27:42"
"updatedAt":"2022-03-24 16:27:41"
"listed":"1"
"version":"316"
"locale":{6 items
"id":"1"
"name":"English (United States)"
"code":"en-US"
"default":"1"
"active":"1"
"enabled":"1"
}
"model":{5 items
"type":"model"
"zuid":"6-31079c-vdg69q"
"name":"homepage"
"label":"Homepage"
"resourceURI":"https://kfg6bckb-dev.webengine.zesty.io/-/instant/6-31079c-vdg69q.json"
}
"web":{12 items
"url":"https://kfg6bckb-dev.webengine.zesty.io/"
"uri":"/"
"fragment":"zesty_home"
"canonical_tag_mode":"1"
"sitemap_priority":"-1.0"
"sitemap_last_updated":"2022-03-24 16:27:41"
"canonical_query_param_whitelist":NULL
"canonical_tag_custom_value":NULL
"seo_link_text":"Homepage"
"seo_meta_title":"Zesty.io: Simplify digital. Maximize results."
"seo_meta_description":"Zesty is built for teams to manage and distribute content to multiple sites, devices, and anywhere else it needs to go."
"seo_meta_keywords":NULL
}
}
Look through the dom and output the <meta>
tags in a separate table.
use this data https://kfg6bckb-dev.webengine.zesty.io/-/headless/routing.json (but relative to site)
to make a searchable table of title and links, which can be clicked to open that page
meta tags table should show the meta attributes
Currently, there are 2 field type values being output: string, object
Neither of these are field types in the Manager which can be very confusing for the user. The type should be the value of the field type selected in Schema.
the red close button looks a little scary. It resembles the delete button in our UI, that’s initially what I thought it was
For content viewer, organize top level items (not meta) into nice table view:
Field Name | Type | Usage | Content Length | Content Example...
Example fixed app bar from example: https://mui.com/material-ui/react-app-bar/#back-to-top
Example app bar with tabs: https://mui.com/material-ui/react-app-bar/#app-bar-with-responsive-menu
Does not run with NPM, @darwin808 please verify this locally and setup a PR.
You can test with nextjs-website and npm update @zesty-io/explorer
add try catch to handle localhost errors
Change view port size of website for mobile preview
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.