gchust ae6b801132
feat: new block template plugin (#5920)
* feat: new block template plugin

* fix: build error

* fix: support nested template in blocks

* fix: remove undefined x-component properties from schema during template processing [skip ci]

* feat: reset action for template block

* fix: skip dnd error[skip ci]

* fix: dupliate template action[skip ci]

* fix: plugin not shown in test env

* fix: reset action not been shown

* fix: no permission error

* fix: loading error in production env

* fix: cross env dev error

* fix: blocks not shown in production env

* fix: insert template failing for the first time

* chore: merge

* fix: association record option not working correctly

* fix: setting error

* fix: setting

* fix: linkage error

* fix: association settings error

* fix: association record error

* feat: support edit form tpl

* fix: support more blocks

* fix: avoid nested template

* chore: re org codes

* chore: refactor[skip ci]

* chore: required comment for loading template [skip ci]

* refactor: simplify schema handling and add axios interceptors for template blocks[skip ci]

* fix: i18n [skip ci]

* feat: support showing template title in block

* fix: revert to template will lost the template title

* fix: delete operation removing blocks not working

* fix: template label

* fix: i18n error

* fix: form type should be shown only when current record

* feat: show template in the add new popup

* fix: form type switch should not be shown in add new block popup

* fix: missing i18n

* fix: associate fields should be shown only having current record

* fix: switching form not working in cn

* fix: incorrect form associate setting

* fix: uniq action issue

* fix: uniq fields/actions[skip ci]

* fix: style issue

* fix: error in configure actions

* fix: bulk destroy when no records selected

* fix: only show revert to template config in the block level

* fix: table refresh pagination incorrect after deletion

* fix: be able to input name of template

* fix: bulk destroy

* fix: reset setting will sync with template

* fix: block template table style

* fix: missing translatation

* fix: cache issue

* fix: blocks not shown in the popup after modifing the template

* feat: add search for template initializers

* fix: some blocks are missing template related setting

* fix: hide save as template in template configure view

* chore: revert incorrect commit

* fix: batchpatch error

* fix: mobile support

* fix: build error

* fix: limit one template one block

* feat: show revert to template for fields and actions

* fix: build error

* fix: revert to template not refreshing the ui for actions

* fix: revert to template not working for form

* fix: duplicate revert to setting setting item

* chore: rename reset to revert

* feat: disallow delete template's blocks in page

* feat: add colorTemplateBgSettingsHover for template block hover state

* fix: build error

* chore: hide convert to block template setting item for page

* fix: data template should be hidden in edit form

* fix: fields switch should be disabled

* chore: rename var [skip ci]

* fix: should not be able remove field in block

* fix: after revert settings, is able to remove block in template

* fix: revert settings

* fix: nested template block error

* refactor: cache

* fix: template key has not been validated in client side

* fix: only show template that has been configured

* feat: show template name in edit form

* chore: update package.json

* fix: duplicated fields after dnd in form

* fix: duplicated fields shown in form

* chore: hide old block template menu

* feat: support mobile block template [skip ci]

* fix: filter for type options [skip ci]

* fix: incorrect create new  button style [skip ci]

* feat: add mobile block support

* fix: can't restrict one template one block [skip ci]

* fix: template title not synced after editing template

* fix: keep block deletion should transform the template block to normal block

* fix: insert template fails for the first time

* fix: destroy error

* fix: deploy failure [skip ci]

* fix: destory error in subapp with sub domain

* fix: destroy error

* fix: popup action should be hidden in create new form [skip ci]

* fix: possible crash when converting template to block [skip ci]

* fix: some properties have not been revert in real time

* fix: fitler action condition error

* fix: useDataBlockResource error

* fix: revert settings not refresh filter action form [skip ci]

* fix: new template properties clear

* fix: custom request action can't be shown

* fix: template tab should not be removable

* fix: duplicated delete action in table column

* fix: field link popup not shown in block template page

* fix: page configure link not working correctly

* chore: revert useContextVaraible [skip ci]

* fix(popup): fix configured page not taking effect

* fix: add blocks  button shown in block settings

* fix: only loading 20 templates

* fix: add block icon has been shown [skip ci]

* fix: association not shown in block template configure page

* fix: edit association form error [skip ci]

* fix: console error [skip ci]

* fix: only current field has been refreshed after revert to template [skip ci]

* chore: remove incorrect commit file [skip ci]

* fix: some action delete action still be shown for template block [skip ci]

* fix: template block style[skip ci]

* fix: keep position when rever setting[skip ci]

* fix: revert to template error when already deleted from block [skip ci]

* fix: revert still works even the template has been deleted

* fix: popup not shown as template block [skip ci]

* fix: bulk destory can't keep blocks[skip ci]

* fix: after dnd some unique blocks may be duplicated in the client [skip ci]

* fix: duplicate fields error in form

* fix: revert setting incorrect [skip ci]

* fix: duplicated sub form

* refactor: simplify by moving template loading to backend [skip  ci]

* fix: failing to add template block [skip ci]

* fix: assign fields values in bulk update action [skip ci]

* fix: can't add fields in nester popup subform [skip ci]

* fix: sub-table sub-form not merged correctly [skip ci]

* fix: subtable not highlight unique fields correctly [skip ci]

* fix: block title will not be synced correctly [skip ci]

* fix: can't add block into template [skip ci]

* fix: revert setting not refreshed [skip ci]

* fix: block template title not correct in some cases [skip ci]

* fix: field link's popup merge[skip ci]

* fix: cannot read properties of null in some popup [skip ci]

* fix: position of ui components have not been saved after dnd [skip ci]

* fix: dnd position not saved correctly in some cases [skip ci]

* fix: dnd undefined type error [skip ci]

* fix: can't swtich form type

* fix: some form type switch error [skip ci]

* fix: hide chart block from templates [skip ci]

* feat: support hide some blocks from template [skip ci]

* fix: react error for revert submit button of edit form [skip ci]

* fix: hide workflow and approvar block from template

* fix: hide connect data block from template [skip ci]

* fix: error [skip ci]

* fix: associate record options have not been shown for create form [skip ci]

* fix: creat form popup will be shown after refresh if switch form type [skip ci]

* fix: associate record settings error [skip ci]

* fix: mobile template setting page can not open popup [skip ci]

* fix: mobile content overflow [skip ci]

* chore: update templates menu style [skip ci]

* fix: unique disassociate btn [skip ci]

* feat: save collection and component info while update template

* fix: clear template context info after remove block

* chore: update template block entry point

* fix: incorrect association field template block [skip ci]

* fix: template title only shown after refresh

* fix: tooltip can't be revert correctly after moving entry to submenu [skip ci]

* fix: incorrect behavior after adding collection submenu entries [skip ci]

* fix: edit form support

* fix: support current details [skip ci]

* fix: edit form btn not correct [skip ci]

* fix: create form action params [skip ci]

* fix: hide template menu entry in block template configure page [skip ci]

* fix: incorrect association [skip ci]

* fix: nested template [skip ci]

* fix: can't insert template in mobile [skip ci]

* fix: association title not correct for details block [skip ci]

* chore: remove incorrect submodules commit [skip ci]

* fix: create form is using post method [skip ci]

* fix: association hasone and belongsto details block error [skip ci]

* fix: edit form not able load data [skip ci]

* chore: hide tab bar in mobile template configure page [skip ci]

* fix: don't show no accessible pages for template configure page [skip ci]

* fix: not able to see template list on the first time opening popup [skip ci]

* fix: able to remove related approvals template block [skip ci]

* fix: data not loading for details hasone relationship [skip ci]

* fix: dnd position may not be saved [skip ci]

* fix: multi-step-form is able to delete template step[skip ci]

* fix: hide rever setting in multi step form step name [skip ci]

* fix: extrol wrap when adding blocks from template [skip ci]

* fix: nested schema patch [skip ci]

* fix: x-acl-action not correct[skip ci]

* fix: diassociate action should be unique [skip ci]

* fix: disassociate action not unique [skip ci]

* fix: mobile popup by url not working [skip ci]

* chore: code clean

* chore: update delete setting position [skip ci]

* chore: keep revert btn position consistant in all places [skip ci]

* chore: hide template from workflow setting page [skip ci]

* chore: update setting menu icon [skip ci]

* chore: rename provider name to avoid duplicated with core [skip ci]

* chore: move block template menu to an upper level [skip ci]

* fix: hide other block templates menu [skip ci]

* fix: hide other blocks when creating template

* fix: duplicate revert to template option

* fix: mail manager template block not shown in popup

* fix: main block not showing in popup

* chore: mark old template features as deprecated

* chore: hide deprecated templates in block template configure page

* fix: read x-virtual from null

* fix: ci test error

* fix: skip old templates e2e test cases

* fix: skip old templates e2e test cases

---------

Co-authored-by: Zeke Zhang <958414905@qq.com>
2025-02-20 22:23:07 +08:00

16 lines
356 B
TypeScript

import { createContext, useContext } from 'react';
interface BlockTemplateInfo {
uid?: string;
key?: string;
title?: string;
description?: string;
configured?: boolean;
}
export const BlockTemplateInfoContext = createContext<BlockTemplateInfo>({});
export const useBlockTemplateInfo = () => {
return useContext(BlockTemplateInfoContext);
};