Download the PHP package andy87/yii2-file-crafter without Composer
On this page you can find all versions of the php package andy87/yii2-file-crafter. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package yii2-file-crafter
Yii2 File Crafter
Yii2 File Crafter - library for generating a many templates with minimal differences
Content
- Setup
- Config
- Using
Setup
Requirements
- php >=8.0
- Yii2
Composer
Add package to project
Using console
(Recommended)
- Composer ( global setup ) `
- Composer.phar ( local setup )
Using: file `composer.json`
Open file composer.json, in section with key require add line:
"andy87/yii2-file-crafter": "dev-master"
dont forget update composer
- - - - -
Config
Config in the configuration file.
- basic:
config/(web|web-local|local).php - advanced:
(frontend|backend)/config/main-local.php
Minimum config
Full Config with all options
Using
- Marks
- Cache
- Source
- Custom Fields
- Autocomplete status
- Autocomplete list
- Preview status
- Can delete
- Parse data base
- Commands
- Events
- Templates
Marks
Module use marks for replace variables in templates.
{{PascalCase}}- PascalCase by schema name{{camelCase}}- camelCase by schema name{{snake_case}}- snake_case by schema name{{kebab-case}}- kebab-case by schema name{{UPPERCASE}}- UPPERCASE by schema name{{lowercase}}- lowercase by schema name{{[key]}}- custom key from propertycustom_fieldsonconfig( see Custom Fields )
Example
for schema name Product Items replace marks:
{{PascalCase}}-ProductItems{{camelCase}}-productItems{{snake_case}}-product_items{{kebab-case}}-product-items{{UPPERCASE}}-PRODUCT ITEMS{{lowercase}}-product items
Cache (optional)
Configuration for the cache folder with schema data.
dir- path to the cache directory with schema dataext- extension of the cache file
Default configuration:
Source (optional)
Configuration for the source folder with templates files.
dir- path to the directory with the templates files source for generationext- extension of the templates file
Default configuration:
Templates (required)
Array with groups of templates for use on generate files.
The source path may contain:
- some
@alias (source['dir']- default container ) extfor generate any file type (.phpdefault )- some
{{variable}}( see Marks )
File source-template will be searched in the source folder.
Source folder path can be set in the configuration file. ( see Source )
The resultFile path may contain:
- some
@alias (@app/- default prefix ) extfor generate any file type (.phpdefault )- some
{{variable}}( see Marks )
Content of the templates file rendered with the View method renderFile
And prepared with the $replaceList array contains all marks. ( see Marks )
And also passed to the render method:
$schema- schema object$generator- self generator object
Custom Fields (optional)
Array with custom fields for use custom variables in templates.
Using on template key wrapped in square brackets: {{%key%}}
Example: {{key_one}}, {{key_two}}...
Example simple config
with template:
___
Schema 1: Product Items
Field one = !!product!!
Field many = >>> products <<<
...generate...
Result: app/frontend/views/info--product_items.php
___
Schema 2: Category Group
Field label one = --category--
Field label many = +++categories+++
...generate...
Result: app/frontend/views/info--category_group.php
Autocomplete status
Key autoCompleteStatus contain status for autocomplete field Schema name in the form 200 populated values.
Variants: true or false(default)
Autocomplete list (optional)
Key autoCompleteList contain list of autocomplete field Schema name in the form self custom list.
Type: array
Preview status (optional)
Key previewStatus contain status for preview file content on hover icon in the form.
Variants: true(default) or false
Can delete (optional)
Key canDelete contain status for delete schema from the form.
Variants: true(default) or false
Parse data base (optional)
Key parseDataBase contain list of target for extend schema name list from database.
Variants: array with values:
autocompletefakeCache
Default empty;
Commands (optional)
Key commands contain list cli command for call before generate any file.
command make use of the {{variable}} in the command string ( see Marks )
Example: generate gii model for table name from schema name before generate fileContent
Default empty;
Events (optional)
Make use of the eventHandlers key to add a behavior to the module.
Example: add behavior FileCrafterBehavior to the module
Default null;
Before init
CrafterEvent::BEFORE_INIT before init module
After init
CrafterEvent::AFTER_INIT after init module
Come events has special properties...
Before generate
CrafterEventGenerate::BEFORE before generate all files
Before command
CrafterEventCommand::BEFORE before run cli command
Cmd
\andy87\yii2\file_crafter\components\models\Dto
- string $exec - exec command
- string $output - exec output
- array $replaceList - replace map
After command
CrafterEventCommand::AFTER after run cli command
Before render
CrafterEventRender::BEFORE before render file
After render
CrafterEventRender::AFTER after render file
After generate
CrafterEventGenerate::AFTER after generate all files
All versions of yii2-file-crafter with dependencies
ext-json Version *