-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Tabulator Input + Add Translatable Value + Improve Structure Properties #81
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
mcaskill
force-pushed
the
joel/feature/tabulator-input
branch
2 times, most recently
from
December 18, 2023 23:50
41d3a1c
to
ae05a1e
Compare
…andardize translatables with TranslatableInterface.php and add a new TranslatableValue.php enabling dissociating translation from the core translator
… longer relay to `translator->translate()`
…trans` method signature and update `TranslatableValue` with said method and deprecate `each` and `sanitize` for future version of charcoal
…rty.php - remove inputVal from StructureProperty.php
…their own set of options.
…tache since it's no longer needed following changes to TranslatableValue and AbstractProperty/Input
Changed: - Update Node from v14 to v16. - Update NPM from v8 to v9. - Update Node Sass from v7 to v9. - Update lockfile.
…y not allowed to be l10n
Added support to prioritize "form_group" over "default_form_group" to allow for custom one-off form groups.
Added support for validating model structures
mcaskill
force-pushed
the
joel/feature/tabulator-input
branch
from
March 5, 2024 16:49
ae05a1e
to
b4af3bf
Compare
Changed: - Ensure instantiated menu item is an instance of `AuthAwareInterface` before testing authorization. - Add missing class properties for menu and menu item builders.
Improve 'metadata/config' and 'view/config'. Changed: - Ensure extra paths are defined before merging. - Add support for extra module paths to 'translator/config'.
…nput Resolves #88 Add input option `form_widget` to `SelectizeInput` and `Selectize\TagsInput` and default to "charcoal/admin/widget/quick-form".
mcaskill
force-pushed
the
joel/feature/tabulator-input
branch
from
March 6, 2024 02:44
2d8c73f
to
b407dfb
Compare
When there's only a heading, collapse the bottom margin.
If no layout is defined, create a layout of single columns matching the number of properties to render.
Changed: - Add ordered list (`numlist`) to toolbar. - Disable menubar. - Disable plugins `code` and `pagebreak`. - Remove "_blank" as default link target. - Sort options.
Add options `dialog_title_create` and `dialog_title_update` to customize the dialog to create or update an option. Defaults to the property's label.
Changed: - Display all form groups when quick form is tabbed by language. - Replaced default `.nav-pills` with `.nav-tabs` for a better appearance. - Fixed spacing between groups with and without headers. - Fixed disappeared language prefixes (amends 524ec25). - Fixed and improved appearance of tabs in quick form.
Also fixed indentation of CSS.
Changed: - Add method for default tabulator options. - Translate the tabulator placeholder option. - Translate tabulator column tooltip. - Sort methods by visibility.
…inerTrait See https://locomotivemtl.slack.com/archives/C02G3F7JV/p1699466030801199 A `Metadata` instance is shared by instances of the same class, when retrieved from the `MetadataLoader`. For example, all instances of a `Page` model will share the same `ModelMetadata` instance. Same applies to properties, all instances of `StringProperty` will share the same `PropertyMetadata` instance, regardless of its related model and model property ident. This was causing issue for me this morning with `TableWidget` where two different properties (e.g., `full_name` and `computed_thing`) used the same property type `string` but two different display types (`TextDisplay` and `CustomDisplay`). The `TextDisplay` was not defined on full_name but `CustomDisplay` was for `computed_thing`. From the second row onwards, the `full_name` wasn’t rendering like the first row. The source of the issue is that `CollectionContainerTrait::setupDisplayPropertyValue()` merges a model’s property definition (where the custom `display_type` is defined) into its property’s (`StringProperty`) metadata instance. The `CollectionContainerTrait::setupDisplayPropertyValue()` method will now clone the property type metadata to avoid conflicts.
Changed `StructureFormGroup::formProperties()` to filter property metadata by structure model (new feature) and parent model (existing feature). BREAKING: The parent model property now receives both its structure/storage property and the structure's sub-property as a dot-delimited key path: `<storageProperty>.<childProperty>`. This fixes the risk of conflicting property identifiers where a structure's child property inherits the parent model's property mutations and fixes the missing context for the structure's property.
mcaskill
force-pushed
the
joel/feature/tabulator-input
branch
from
March 11, 2024 18:39
70d2bb5
to
e582431
Compare
Available from `Charcoal.Admin.debounce()`.
Add support for TinyMCE's Notifications Manager to provide validity feedback: we add an error notification when the form dispatches an `invalid` event. Since TinyMCE does not properly support editors inside dialogs, notifications are positionned absolutely, outside of the modal, from the bottom of the DOM. This risks positioning them outside of the viewport. To work around this issue, a debounced `scroll` event is used to reposition any notifications.
Ensure the method returns any value and not just a string.
Changed: - When column is required, a red asterisk is appended to the column title. - Column title will be prepended to the row index in the validation feedback message. - Duplicate validation messages will be suppressed to minimize noise.
…ethod_exists` on potential integer value
Removed `defaultColumnTemplate` in favour of `columnDefaults` introduced in Tabulator 5.0.
🎉 This PR is included in version 5.0.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Admin
AbstractPropertyInput::getInputValOptions()
to allow input sub-classes to define their own set of options to parse input values.TabulatorInput
,JsonEditorInput
, andTextareaInput
.form_group
overdefault_form_group
inStructureFormGroup
to allow for custom one-off form groups.Property
ModelStructureProperty
.Translator
TranslatableInterface
and add a newTranslatableValue
to dissociate fromTranslation
which is tied with theTranslator
andLocalesManager
.TranslatableValue
to Property package.