summaryrefslogtreecommitdiff
path: root/modules/esha/lab
diff options
context:
space:
mode:
Diffstat (limited to 'modules/esha/lab')
-rw-r--r--modules/esha/lab/composer.json14
-rw-r--r--modules/esha/lab/config/install/core.entity_form_display.node.lab.default.yml138
-rw-r--r--modules/esha/lab/config/install/core.entity_view_display.node.lab.default.yml83
-rw-r--r--modules/esha/lab/config/install/core.entity_view_display.node.lab.teaser.yml22
-rw-r--r--modules/esha/lab/config/install/core.entity_view_mode.node.teaser.yml12
-rw-r--r--modules/esha/lab/config/install/field.field.node.lab.field_description_.yml18
-rw-r--r--modules/esha/lab/config/install/field.field.node.lab.field_faculty_e_mail.yml18
-rw-r--r--modules/esha/lab/config/install/field.field.node.lab.field_faculty_incharge.yml27
-rw-r--r--modules/esha/lab/config/install/field.field.node.lab.field_faculty_phone_no.yml22
-rw-r--r--modules/esha/lab/config/install/field.field.node.lab.field_hardware_software_details.yml33
-rw-r--r--modules/esha/lab/config/install/field.field.node.lab.field_location.yml18
-rw-r--r--modules/esha/lab/config/install/field.field.node.lab.field_programmer_name.yml18
-rw-r--r--modules/esha/lab/config/install/field.storage.node.field_description_.yml19
-rw-r--r--modules/esha/lab/config/install/field.storage.node.field_faculty_e_mail.yml18
-rw-r--r--modules/esha/lab/config/install/field.storage.node.field_faculty_incharge.yml19
-rw-r--r--modules/esha/lab/config/install/field.storage.node.field_faculty_phone_no.yml20
-rw-r--r--modules/esha/lab/config/install/field.storage.node.field_hardware_software_details.yml21
-rw-r--r--modules/esha/lab/config/install/field.storage.node.field_location.yml21
-rw-r--r--modules/esha/lab/config/install/field.storage.node.field_programmer_name.yml21
-rw-r--r--modules/esha/lab/config/install/node.type.fac_page.yml23
-rw-r--r--modules/esha/lab/config/install/node.type.lab.yml17
-rw-r--r--modules/esha/lab/config/install/paragraphs.paragraphs_type.hardware_and_software.yml9
-rw-r--r--modules/esha/lab/lab.info.yml12
-rw-r--r--modules/esha/lab/lab.install22
-rw-r--r--modules/esha/lab/lab.module35
-rw-r--r--modules/esha/lab/templates/lab.html.twig1
-rw-r--r--modules/esha/lab/tests/src/Functional/LoadTest.php46
27 files changed, 727 insertions, 0 deletions
diff --git a/modules/esha/lab/composer.json b/modules/esha/lab/composer.json
new file mode 100644
index 0000000..70ee9e7
--- /dev/null
+++ b/modules/esha/lab/composer.json
@@ -0,0 +1,14 @@
+{
+ "name": "drupal/lab",
+ "type": "drupal-module",
+ "description": "Module for Lab Content Tyoe",
+ "keywords": ["Drupal"],
+ "license": "GPL-2.0+",
+ "homepage": "https://www.drupal.org/project/lab",
+ "minimum-stability": "dev",
+ "support": {
+ "issues": "https://www.drupal.org/project/issues/lab",
+ "source": "http://cgit.drupalcode.org/lab"
+ },
+ "require": { }
+}
diff --git a/modules/esha/lab/config/install/core.entity_form_display.node.lab.default.yml b/modules/esha/lab/config/install/core.entity_form_display.node.lab.default.yml
new file mode 100644
index 0000000..71f1994
--- /dev/null
+++ b/modules/esha/lab/config/install/core.entity_form_display.node.lab.default.yml
@@ -0,0 +1,138 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.field.node.lab.field_description_
+ - field.field.node.lab.field_faculty_e_mail
+ - field.field.node.lab.field_faculty_incharge
+ - field.field.node.lab.field_faculty_phone_no
+ - field.field.node.lab.field_hardware_software_details
+ - field.field.node.lab.field_location
+ - field.field.node.lab.field_programmer_name
+ - node.type.lab
+ module:
+ - paragraphs
+ - path
+id: node.lab.default
+targetEntityType: node
+bundle: lab
+mode: default
+content:
+ created:
+ type: datetime_timestamp
+ weight: 10
+ region: content
+ settings: { }
+ third_party_settings: { }
+ field_description_:
+ weight: 129
+ settings:
+ rows: 5
+ placeholder: ''
+ third_party_settings: { }
+ type: string_textarea
+ region: content
+ field_faculty_e_mail:
+ weight: 127
+ settings:
+ size: 60
+ placeholder: ''
+ third_party_settings: { }
+ type: email_default
+ region: content
+ field_faculty_incharge:
+ weight: 124
+ settings:
+ match_operator: CONTAINS
+ size: 60
+ placeholder: ''
+ third_party_settings: { }
+ type: entity_reference_autocomplete
+ region: content
+ field_faculty_phone_no:
+ weight: 128
+ settings:
+ placeholder: ''
+ third_party_settings: { }
+ type: number
+ region: content
+ field_hardware_software_details:
+ type: entity_reference_paragraphs
+ weight: 126
+ settings:
+ title: Paragraph
+ title_plural: Paragraphs
+ edit_mode: open
+ add_mode: dropdown
+ form_display_mode: default
+ default_paragraph_type: ''
+ third_party_settings: { }
+ region: content
+ field_location:
+ weight: 122
+ settings:
+ size: 60
+ placeholder: ''
+ third_party_settings: { }
+ type: string_textfield
+ region: content
+ field_programmer_name:
+ weight: 125
+ settings:
+ size: 60
+ placeholder: ''
+ third_party_settings: { }
+ type: string_textfield
+ region: content
+ langcode:
+ type: language_select
+ weight: 2
+ region: content
+ settings:
+ include_locked: true
+ third_party_settings: { }
+ path:
+ type: path
+ weight: 30
+ region: content
+ settings: { }
+ third_party_settings: { }
+ promote:
+ type: boolean_checkbox
+ settings:
+ display_label: true
+ weight: 15
+ region: content
+ third_party_settings: { }
+ status:
+ type: boolean_checkbox
+ settings:
+ display_label: true
+ weight: 120
+ region: content
+ third_party_settings: { }
+ sticky:
+ type: boolean_checkbox
+ settings:
+ display_label: true
+ weight: 16
+ region: content
+ third_party_settings: { }
+ title:
+ type: string_textfield
+ weight: -5
+ region: content
+ settings:
+ size: 60
+ placeholder: ''
+ third_party_settings: { }
+ uid:
+ type: entity_reference_autocomplete
+ weight: 5
+ settings:
+ match_operator: CONTAINS
+ size: 60
+ placeholder: ''
+ region: content
+ third_party_settings: { }
+hidden: { }
diff --git a/modules/esha/lab/config/install/core.entity_view_display.node.lab.default.yml b/modules/esha/lab/config/install/core.entity_view_display.node.lab.default.yml
new file mode 100644
index 0000000..d2e7fb7
--- /dev/null
+++ b/modules/esha/lab/config/install/core.entity_view_display.node.lab.default.yml
@@ -0,0 +1,83 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.field.node.lab.field_description_
+ - field.field.node.lab.field_faculty_e_mail
+ - field.field.node.lab.field_faculty_incharge
+ - field.field.node.lab.field_faculty_phone_no
+ - field.field.node.lab.field_hardware_software_details
+ - field.field.node.lab.field_location
+ - field.field.node.lab.field_programmer_name
+ - node.type.lab
+ module:
+ - entity_reference_revisions
+ - user
+id: node.lab.default
+targetEntityType: node
+bundle: lab
+mode: default
+content:
+ field_description_:
+ weight: 109
+ label: above
+ settings: { }
+ third_party_settings: { }
+ type: basic_string
+ region: content
+ field_faculty_e_mail:
+ weight: 107
+ label: above
+ settings: { }
+ third_party_settings: { }
+ type: basic_string
+ region: content
+ field_faculty_incharge:
+ weight: 104
+ label: above
+ settings:
+ link: true
+ third_party_settings: { }
+ type: entity_reference_label
+ region: content
+ field_faculty_phone_no:
+ weight: 108
+ label: above
+ settings:
+ thousand_separator: ''
+ prefix_suffix: true
+ third_party_settings: { }
+ type: number_integer
+ region: content
+ field_hardware_software_details:
+ type: entity_reference_revisions_entity_view
+ weight: 106
+ label: above
+ settings:
+ view_mode: default
+ link: ''
+ third_party_settings: { }
+ region: content
+ field_location:
+ weight: 102
+ label: above
+ settings:
+ link_to_entity: false
+ third_party_settings: { }
+ type: string
+ region: content
+ field_programmer_name:
+ weight: 105
+ label: above
+ settings:
+ link_to_entity: false
+ third_party_settings: { }
+ type: string
+ region: content
+ links:
+ weight: 100
+ settings: { }
+ third_party_settings: { }
+ region: content
+hidden:
+ langcode: true
diff --git a/modules/esha/lab/config/install/core.entity_view_display.node.lab.teaser.yml b/modules/esha/lab/config/install/core.entity_view_display.node.lab.teaser.yml
new file mode 100644
index 0000000..41ceb2a
--- /dev/null
+++ b/modules/esha/lab/config/install/core.entity_view_display.node.lab.teaser.yml
@@ -0,0 +1,22 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - core.entity_view_mode.node.teaser
+ - field.field.node.lab.field_location
+ - node.type.lab
+ module:
+ - user
+id: node.lab.teaser
+targetEntityType: node
+bundle: lab
+mode: teaser
+content:
+ links:
+ weight: 100
+ settings: { }
+ third_party_settings: { }
+ region: content
+hidden:
+ field_location: true
+ langcode: true
diff --git a/modules/esha/lab/config/install/core.entity_view_mode.node.teaser.yml b/modules/esha/lab/config/install/core.entity_view_mode.node.teaser.yml
new file mode 100644
index 0000000..fb7a35a
--- /dev/null
+++ b/modules/esha/lab/config/install/core.entity_view_mode.node.teaser.yml
@@ -0,0 +1,12 @@
+uuid: eae4e8eb-df75-49ff-b350-c4bd59679b36
+langcode: en
+status: true
+dependencies:
+ module:
+ - node
+_core:
+ default_config_hash: Mz9qWr1kUYK0mjRAGDsr5XS6PvtZ24en_7ndt-pyWe4
+id: node.teaser
+label: Teaser
+targetEntityType: node
+cache: true
diff --git a/modules/esha/lab/config/install/field.field.node.lab.field_description_.yml b/modules/esha/lab/config/install/field.field.node.lab.field_description_.yml
new file mode 100644
index 0000000..d604ec4
--- /dev/null
+++ b/modules/esha/lab/config/install/field.field.node.lab.field_description_.yml
@@ -0,0 +1,18 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.storage.node.field_description_
+ - node.type.lab
+id: node.lab.field_description_
+field_name: field_description_
+entity_type: node
+bundle: lab
+label: Description
+description: ''
+required: false
+translatable: false
+default_value: { }
+default_value_callback: ''
+settings: { }
+field_type: string_long
diff --git a/modules/esha/lab/config/install/field.field.node.lab.field_faculty_e_mail.yml b/modules/esha/lab/config/install/field.field.node.lab.field_faculty_e_mail.yml
new file mode 100644
index 0000000..39dfaeb
--- /dev/null
+++ b/modules/esha/lab/config/install/field.field.node.lab.field_faculty_e_mail.yml
@@ -0,0 +1,18 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.storage.node.field_faculty_e_mail
+ - node.type.lab
+id: node.lab.field_faculty_e_mail
+field_name: field_faculty_e_mail
+entity_type: node
+bundle: lab
+label: 'Faculty E-Mail'
+description: ''
+required: false
+translatable: false
+default_value: { }
+default_value_callback: ''
+settings: { }
+field_type: email
diff --git a/modules/esha/lab/config/install/field.field.node.lab.field_faculty_incharge.yml b/modules/esha/lab/config/install/field.field.node.lab.field_faculty_incharge.yml
new file mode 100644
index 0000000..21bfc1c
--- /dev/null
+++ b/modules/esha/lab/config/install/field.field.node.lab.field_faculty_incharge.yml
@@ -0,0 +1,27 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.storage.node.field_faculty_incharge
+ - node.type.fac_page
+ - node.type.lab
+id: node.lab.field_faculty_incharge
+field_name: field_faculty_incharge
+entity_type: node
+bundle: lab
+label: 'Faculty Incharge'
+description: ''
+required: false
+translatable: false
+default_value: { }
+default_value_callback: ''
+settings:
+ handler: 'default:node'
+ handler_settings:
+ target_bundles:
+ fac_page: fac_page
+ sort:
+ field: _none
+ auto_create: false
+ auto_create_bundle: ''
+field_type: entity_reference
diff --git a/modules/esha/lab/config/install/field.field.node.lab.field_faculty_phone_no.yml b/modules/esha/lab/config/install/field.field.node.lab.field_faculty_phone_no.yml
new file mode 100644
index 0000000..9e0b7bd
--- /dev/null
+++ b/modules/esha/lab/config/install/field.field.node.lab.field_faculty_phone_no.yml
@@ -0,0 +1,22 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.storage.node.field_faculty_phone_no
+ - node.type.lab
+id: node.lab.field_faculty_phone_no
+field_name: field_faculty_phone_no
+entity_type: node
+bundle: lab
+label: 'Faculty Phone No'
+description: ''
+required: false
+translatable: false
+default_value: { }
+default_value_callback: ''
+settings:
+ min: null
+ max: null
+ prefix: ''
+ suffix: ''
+field_type: integer
diff --git a/modules/esha/lab/config/install/field.field.node.lab.field_hardware_software_details.yml b/modules/esha/lab/config/install/field.field.node.lab.field_hardware_software_details.yml
new file mode 100644
index 0000000..a51d802
--- /dev/null
+++ b/modules/esha/lab/config/install/field.field.node.lab.field_hardware_software_details.yml
@@ -0,0 +1,33 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.storage.node.field_hardware_software_details
+ - node.type.lab
+ - paragraphs.paragraphs_type.hardware_and_software
+ module:
+ - entity_reference_revisions
+id: node.lab.field_hardware_software_details
+field_name: field_hardware_software_details
+entity_type: node
+bundle: lab
+label: 'Hardware Software Details'
+description: ''
+required: false
+translatable: false
+default_value: { }
+default_value_callback: ''
+settings:
+ handler: 'default:paragraph'
+ handler_settings:
+ negate: 0
+ target_bundles:
+ hardware_and_software: hardware_and_software
+ target_bundles_drag_drop:
+ hardware_and_software:
+ enabled: true
+ weight: 3
+ r_d_projects:
+ weight: 4
+ enabled: false
+field_type: entity_reference_revisions
diff --git a/modules/esha/lab/config/install/field.field.node.lab.field_location.yml b/modules/esha/lab/config/install/field.field.node.lab.field_location.yml
new file mode 100644
index 0000000..d1eb382
--- /dev/null
+++ b/modules/esha/lab/config/install/field.field.node.lab.field_location.yml
@@ -0,0 +1,18 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.storage.node.field_location
+ - node.type.lab
+id: node.lab.field_location
+field_name: field_location
+entity_type: node
+bundle: lab
+label: Location
+description: ''
+required: false
+translatable: false
+default_value: { }
+default_value_callback: ''
+settings: { }
+field_type: string
diff --git a/modules/esha/lab/config/install/field.field.node.lab.field_programmer_name.yml b/modules/esha/lab/config/install/field.field.node.lab.field_programmer_name.yml
new file mode 100644
index 0000000..d192d1c
--- /dev/null
+++ b/modules/esha/lab/config/install/field.field.node.lab.field_programmer_name.yml
@@ -0,0 +1,18 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.storage.node.field_programmer_name
+ - node.type.lab
+id: node.lab.field_programmer_name
+field_name: field_programmer_name
+entity_type: node
+bundle: lab
+label: 'Programmer Name'
+description: ''
+required: false
+translatable: false
+default_value: { }
+default_value_callback: ''
+settings: { }
+field_type: string
diff --git a/modules/esha/lab/config/install/field.storage.node.field_description_.yml b/modules/esha/lab/config/install/field.storage.node.field_description_.yml
new file mode 100644
index 0000000..c156a3f
--- /dev/null
+++ b/modules/esha/lab/config/install/field.storage.node.field_description_.yml
@@ -0,0 +1,19 @@
+uuid: 7083d7bf-4a82-442a-b247-b5e3efefee5f
+langcode: en
+status: true
+dependencies:
+ module:
+ - node
+id: node.field_description_
+field_name: field_description_
+entity_type: node
+type: string_long
+settings:
+ case_sensitive: false
+module: core
+locked: false
+cardinality: 1
+translatable: true
+indexes: { }
+persist_with_no_fields: false
+custom_storage: false
diff --git a/modules/esha/lab/config/install/field.storage.node.field_faculty_e_mail.yml b/modules/esha/lab/config/install/field.storage.node.field_faculty_e_mail.yml
new file mode 100644
index 0000000..de20bf6
--- /dev/null
+++ b/modules/esha/lab/config/install/field.storage.node.field_faculty_e_mail.yml
@@ -0,0 +1,18 @@
+uuid: a72bd7c5-3bcc-469c-bc4d-7e53dcdecbfc
+langcode: en
+status: true
+dependencies:
+ module:
+ - node
+id: node.field_faculty_e_mail
+field_name: field_faculty_e_mail
+entity_type: node
+type: email
+settings: { }
+module: core
+locked: false
+cardinality: 1
+translatable: true
+indexes: { }
+persist_with_no_fields: false
+custom_storage: false
diff --git a/modules/esha/lab/config/install/field.storage.node.field_faculty_incharge.yml b/modules/esha/lab/config/install/field.storage.node.field_faculty_incharge.yml
new file mode 100644
index 0000000..0740b62
--- /dev/null
+++ b/modules/esha/lab/config/install/field.storage.node.field_faculty_incharge.yml
@@ -0,0 +1,19 @@
+uuid: 72d5df56-23f1-40ee-9cdb-47ce8ccd35dd
+langcode: en
+status: true
+dependencies:
+ module:
+ - node
+id: node.field_faculty_incharge
+field_name: field_faculty_incharge
+entity_type: node
+type: entity_reference
+settings:
+ target_type: node
+module: core
+locked: false
+cardinality: 1
+translatable: true
+indexes: { }
+persist_with_no_fields: false
+custom_storage: false
diff --git a/modules/esha/lab/config/install/field.storage.node.field_faculty_phone_no.yml b/modules/esha/lab/config/install/field.storage.node.field_faculty_phone_no.yml
new file mode 100644
index 0000000..bdf060a
--- /dev/null
+++ b/modules/esha/lab/config/install/field.storage.node.field_faculty_phone_no.yml
@@ -0,0 +1,20 @@
+uuid: cb625a44-0a19-4b8f-ba64-ecccd03f85fb
+langcode: en
+status: true
+dependencies:
+ module:
+ - node
+id: node.field_faculty_phone_no
+field_name: field_faculty_phone_no
+entity_type: node
+type: integer
+settings:
+ unsigned: false
+ size: normal
+module: core
+locked: false
+cardinality: 1
+translatable: true
+indexes: { }
+persist_with_no_fields: false
+custom_storage: false
diff --git a/modules/esha/lab/config/install/field.storage.node.field_hardware_software_details.yml b/modules/esha/lab/config/install/field.storage.node.field_hardware_software_details.yml
new file mode 100644
index 0000000..09fbf27
--- /dev/null
+++ b/modules/esha/lab/config/install/field.storage.node.field_hardware_software_details.yml
@@ -0,0 +1,21 @@
+uuid: 40b4ca5d-093c-45da-8170-51f3bee83c1b
+langcode: en
+status: true
+dependencies:
+ module:
+ - entity_reference_revisions
+ - node
+ - paragraphs
+id: node.field_hardware_software_details
+field_name: field_hardware_software_details
+entity_type: node
+type: entity_reference_revisions
+settings:
+ target_type: paragraph
+module: entity_reference_revisions
+locked: false
+cardinality: -1
+translatable: true
+indexes: { }
+persist_with_no_fields: false
+custom_storage: false
diff --git a/modules/esha/lab/config/install/field.storage.node.field_location.yml b/modules/esha/lab/config/install/field.storage.node.field_location.yml
new file mode 100644
index 0000000..d5ce75d
--- /dev/null
+++ b/modules/esha/lab/config/install/field.storage.node.field_location.yml
@@ -0,0 +1,21 @@
+uuid: 55b23e0b-33a5-4ed4-9d9a-17ee0abf3440
+langcode: en
+status: true
+dependencies:
+ module:
+ - node
+id: node.field_location
+field_name: field_location
+entity_type: node
+type: string
+settings:
+ max_length: 300
+ is_ascii: false
+ case_sensitive: false
+module: core
+locked: false
+cardinality: 1
+translatable: true
+indexes: { }
+persist_with_no_fields: false
+custom_storage: false
diff --git a/modules/esha/lab/config/install/field.storage.node.field_programmer_name.yml b/modules/esha/lab/config/install/field.storage.node.field_programmer_name.yml
new file mode 100644
index 0000000..b5c1a4c
--- /dev/null
+++ b/modules/esha/lab/config/install/field.storage.node.field_programmer_name.yml
@@ -0,0 +1,21 @@
+uuid: 6db8388e-26d0-489f-a2c8-b97aeaba5951
+langcode: en
+status: true
+dependencies:
+ module:
+ - node
+id: node.field_programmer_name
+field_name: field_programmer_name
+entity_type: node
+type: string
+settings:
+ max_length: 255
+ is_ascii: false
+ case_sensitive: false
+module: core
+locked: false
+cardinality: 1
+translatable: true
+indexes: { }
+persist_with_no_fields: false
+custom_storage: false
diff --git a/modules/esha/lab/config/install/node.type.fac_page.yml b/modules/esha/lab/config/install/node.type.fac_page.yml
new file mode 100644
index 0000000..47f8ffb
--- /dev/null
+++ b/modules/esha/lab/config/install/node.type.fac_page.yml
@@ -0,0 +1,23 @@
+uuid: b7471e78-83f0-4359-9512-d4a8f02c2218
+langcode: en
+status: true
+dependencies:
+ enforced:
+ module:
+ - acadmix_faculty
+ module:
+ - menu_ui
+third_party_settings:
+ menu_ui:
+ available_menus:
+ - main
+ parent: 'main:'
+_core:
+ default_config_hash: yZnGgm-oTEuH3Qz8VcW49f94qFn-pYOYZdrX601an0U
+name: 'Faculty Page'
+type: fac_page
+description: 'Content template for opening Faculty Page'
+help: ''
+new_revision: true
+preview_mode: 1
+display_submitted: false
diff --git a/modules/esha/lab/config/install/node.type.lab.yml b/modules/esha/lab/config/install/node.type.lab.yml
new file mode 100644
index 0000000..e5a2e2a
--- /dev/null
+++ b/modules/esha/lab/config/install/node.type.lab.yml
@@ -0,0 +1,17 @@
+langcode: en
+status: true
+dependencies:
+ module:
+ - menu_ui
+third_party_settings:
+ menu_ui:
+ available_menus:
+ - main
+ parent: 'main:'
+name: Lab
+type: lab
+description: ''
+help: ''
+new_revision: true
+preview_mode: 1
+display_submitted: false
diff --git a/modules/esha/lab/config/install/paragraphs.paragraphs_type.hardware_and_software.yml b/modules/esha/lab/config/install/paragraphs.paragraphs_type.hardware_and_software.yml
new file mode 100644
index 0000000..f7b105e
--- /dev/null
+++ b/modules/esha/lab/config/install/paragraphs.paragraphs_type.hardware_and_software.yml
@@ -0,0 +1,9 @@
+uuid: c3df85d3-cc1d-408b-b115-17a70677f6d8
+langcode: en
+status: true
+dependencies: { }
+id: hardware_and_software
+label: 'Hardware and Software'
+icon_uuid: null
+description: ''
+behavior_plugins: { }
diff --git a/modules/esha/lab/lab.info.yml b/modules/esha/lab/lab.info.yml
new file mode 100644
index 0000000..8507cd7
--- /dev/null
+++ b/modules/esha/lab/lab.info.yml
@@ -0,0 +1,12 @@
+name: 'lab'
+type: module
+description: 'Module for Lab Content Tyoe'
+core: 8.x
+package: 'Custom'
+dependencies:
+ - drupal:paragraphs
+ - drupal:path
+ - drupal:entity_reference_revisions
+ - drupal:user
+ - drupal:node
+ - drupal:menu_ui
diff --git a/modules/esha/lab/lab.install b/modules/esha/lab/lab.install
new file mode 100644
index 0000000..376861b
--- /dev/null
+++ b/modules/esha/lab/lab.install
@@ -0,0 +1,22 @@
+
+<?php
+/**
+* Implements hook_uninstall().
+*/
+function lab_uninstall() { //<-- replace “welcome” with your module machine name
+ // Load services.
+ $queryFactory = \Drupal::service('entity.query');
+ $nodeStorage = \Drupal::entityManager()->getStorage('node');
+
+ // Query all entity.
+ $query = $queryFactory->get('node')
+// <-- replace event in below line with your content type machine name
+ ->condition('type', 'lab');
+ $nids = $query->execute();
+
+ // Delete entities.
+ if (!empty($nids)) {
+ $entities = $nodeStorage->loadMultiple($nids);
+ $nodeStorage->delete($entities);
+ }
+}
diff --git a/modules/esha/lab/lab.module b/modules/esha/lab/lab.module
new file mode 100644
index 0000000..65a0b7e
--- /dev/null
+++ b/modules/esha/lab/lab.module
@@ -0,0 +1,35 @@
+<?php
+
+/**
+ * @file
+ * Contains lab.module.
+ */
+
+use Drupal\Core\Routing\RouteMatchInterface;
+
+/**
+ * Implements hook_help().
+ */
+function lab_help($route_name, RouteMatchInterface $route_match) {
+ switch ($route_name) {
+ // Main module help for the lab module.
+ case 'help.page.lab':
+ $output = '';
+ $output .= '<h3>' . t('About') . '</h3>';
+ $output .= '<p>' . t('Module for Lab Content Tyoe') . '</p>';
+ return $output;
+
+ default:
+ }
+}
+
+/**
+ * Implements hook_theme().
+ */
+function lab_theme() {
+ return [
+ 'lab' => [
+ 'render element' => 'children',
+ ],
+ ];
+}
diff --git a/modules/esha/lab/templates/lab.html.twig b/modules/esha/lab/templates/lab.html.twig
new file mode 100644
index 0000000..91e43c8
--- /dev/null
+++ b/modules/esha/lab/templates/lab.html.twig
@@ -0,0 +1 @@
+<!-- Add you custom twig html here --> \ No newline at end of file
diff --git a/modules/esha/lab/tests/src/Functional/LoadTest.php b/modules/esha/lab/tests/src/Functional/LoadTest.php
new file mode 100644
index 0000000..918be07
--- /dev/null
+++ b/modules/esha/lab/tests/src/Functional/LoadTest.php
@@ -0,0 +1,46 @@
+<?php
+
+namespace Drupal\Tests\lab\Functional;
+
+use Drupal\Core\Url;
+use Drupal\Tests\BrowserTestBase;
+
+/**
+ * Simple test to ensure that main page loads with module enabled.
+ *
+ * @group lab
+ */
+class LoadTest extends BrowserTestBase {
+
+ /**
+ * Modules to enable.
+ *
+ * @var array
+ */
+ public static $modules = ['lab'];
+
+ /**
+ * A user with permission to administer site configuration.
+ *
+ * @var \Drupal\user\UserInterface
+ */
+ protected $user;
+
+ /**
+ * {@inheritdoc}
+ */
+ protected function setUp() {
+ parent::setUp();
+ $this->user = $this->drupalCreateUser(['administer site configuration']);
+ $this->drupalLogin($this->user);
+ }
+
+ /**
+ * Tests that the home page loads with a 200 response.
+ */
+ public function testLoad() {
+ $this->drupalGet(Url::fromRoute('<front>'));
+ $this->assertSession()->statusCodeEquals(200);
+ }
+
+}