FindObject.psd1
|
# # Module manifest for module 'FindObject' # # Generated by: Matthew Bubb # @{ # Script module file associated with this manifest. RootModule = 'FindObject.psm1' # Version number of this module. ModuleVersion = '2.0.0' # Supported PSEditions CompatiblePSEditions = @('Desktop', 'Core') # ID used to uniquely identify this module GUID = '7a6afbe7-f4d9-4ef6-aca8-334d9518de65' # Author of this module Author = 'Matthew Bubb' # Company or vendor of this module CompanyName = 'Personal' # Copyright statement for this module Copyright = '(c) 2025 Matthew Bubb. All rights reserved.' # Description of the functionality provided by this module Description = 'The object-aware grep PowerShell should have shipped with. Filter any pipeline by keyword using AND/OR/NOT logic, Contains/StartsWith/Fuzzy/Exact/Regex matching, multi-property search, early termination, and colorized highlighting. Decoupled Microsoft Graph / Intune integration available via FindObject.Intune submodule.' # Minimum version of the PowerShell engine required by this module PowerShellVersion = '5.1' # Functions to export from this module FunctionsToExport = @( 'Find-ObjectByName' 'Get-FindObjectConfig' 'Set-FindObjectConfig' ) # Cmdlets to export from this module CmdletsToExport = @() # Variables to export from this module VariablesToExport = @() # Aliases to export from this module AliasesToExport = @('fob') # List of all files packaged with this module FileList = @('FindObject.psm1', 'FindObject.psd1', 'FindObject.Intune.psm1', 'FindObject.Intune.psd1', 'FindObject.Tests.ps1', 'FindObject.E2E.Tests.ps1', 'README.md', 'LICENSE') # Private data to pass to the module specified in RootModule/ModuleToProcess. PrivateData = @{ PSData = @{ # Tags applied to this module for gallery discovery. Tags = @('filter', 'search', 'fuzzy', 'grep', 'object', 'pipeline', 'name', 'logical-operators', 'productivity', 'utility', 'Windows', 'PSEdition_Desktop', 'PSEdition_Core', 'Intune', 'Graph', 'DeviceManagement', 'MDM') # A URL to the license for this module. LicenseUri = 'https://github.com/thebubbsy/FindObject/blob/main/LICENSE' # A URL to the main website for this project. ProjectUri = 'https://github.com/thebubbsy/FindObject' # ReleaseNotes of this module ReleaseNotes = @' v2.0.0 — Major release - ARCHITECTURE: Decoupled Microsoft Graph / Intune cmdlets into optional FindObject.Intune submodule keeping core FindObject ultra-lightweight and zero-dependency - PARSER: Full AST-based parser with operator precedence (NOT > AND > OR), parenthetical grouping, quoted phrases ("phrase with spaces"), and boolean keyword aliases (&&, ||, !, -and, -or, -not) - PROPERTIES: Added dotted property path navigation (-Property "User.Department.Name") - INSPECTION: Multi-property search (-Property *) inspects all properties (including non-strings and arrays) - PERFORMANCE: Replaced -like wildcard engine with direct BCL string methods ([String]::Contains, StartsWith, IndexOf) — 5-20x faster on large pipelines - NEW MODES: -Mode Exact (full string equality) and -Mode Regex (.NET regex with compile-time validation) - HIGHLIGHTING: In-band ANSI escape formatting replaces Write-Host for non-destructive pipeline streaming - RESULT CONTROL: -First N / -Skip N for early pipeline termination; -Count and -Quiet switches - EXTENSIBILITY: Intune submodule provides Connect-FindObjectGraph, Get-IntuneDevice, Get-IntuneApp, Get-IntuneCompliancePolicy, Get-IntuneConfigProfile, Get-IntuneAutopilotDevice, Get-IntuneEnrollment v1.1.0 - Fixed NOT logic and natural "term OR term NOT term" syntax - Added -Mode Contains/StartsWith/Fuzzy matching - Added -Property and -AsString - Added -Highlight for colorized console previews - Added Get-FindObjectConfig / Set-FindObjectConfig for persistable defaults v1.0.0 - Initial Release - Filter objects by name with logical operators (AND, OR, NOT) - Pipeline-friendly design with 'fob' alias - Cross-platform support '@ } # End of PSData hashtable } # End of PrivateData hashtable } |