npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

pcf-scripts

v1.38.3

Published

This package contains a module for building PowerApps Component Framework (PCF) controls. See project homepage how to install.

Downloads

22,252

Readme

| PCF Build Scripts | |--- |

Overview

This package contains the scripts required to build a custom PowerApps Component Framework (PCF) control for Microsoft PowerApps. The scripts are designed to be used in conjunction with the Microsoft Power Platform CLI tool, which is separately available via an MSI installer.

Please visit the publicly available documentation for the Microsoft Power Platform CLI tool to learn more. You can also install the Power Platform CLI via its MSI installer.

Without Microsoft Power Platform CLI tool this package should only be used for reference purposes.

Release Notes:

1.38.3:

  • Fix issue generating manifest types file with Typescript 5 and using property type MultiSelectOptionSet

1.36.3:

  • Change minimum supported node engine to >= 16. If lower version is still used, use version 1.35.1 of pcf-scripts. Recommended version of Node.js is >= 18.
  • Change build target to es2020 from es6
  • Update React(virtual) range to include 16.14.0
  • Print ESLint warnings even when there are no errors

1.35.1:

  • No changes

1.32.5:

  • Updated dependencies.

1.31.2:

  • Change default module type to 'es2020' to allow for better tree-shaking to reduce bundle size.
    • NOTE: If the previous behavior is required, add the line "module": "commonjs" to the tsconfig.json file under section compilerOptions.
  • Change default target type to 'es6'.
    • NOTE: If the previous behavior is required, add the line "target": "es5" to the tsconfig.json file under section compilerOptions.

1.30.2:

  • Fix build failure when using TypeScript 5

1.21.4:

  • added 'npm run lint:fix' to auto-fix linting errors
  • replace esbuild-loader with babel-loader for js/ts transpilation to fix invalid bundle issue

1.20.3:

  • added 'npm run lint' as separate script task, and wired into build/rebuild
  • fix: surface all build and lint errors and fail npm run build

1.19.4:

  • faster bundle build: replace babel-loader with esbuild-loader and use esbuild minification
  • support PCF controls with objectType and propertyDependencies in manifest
  • webpack, style-, css- and sass-loader are all listed as runtime dependencies of pcf-scripts

1.17.6:

  • create bundle with css and sass loaders in generated webpack config

1.16.6:

  • fix eslint errors falsely flagging PCF's ComponentFramework class as undefined

1.15.3:

  • support for React(virtual) and Fluent UI code components using platform libraries.
  • support yarn 2.x support for virtual file system instead of node_modules

1.10.4:

  • bundler build step now using webpack 5.x (updated from 4.x) also updated its dependencies to the current versions

1.9.9:

  • when building PCF control, force bundle to always be a single chunk

1.9.4:

  • updated PCF control package.json templates to more modern version (webpack still on v4)
  • NOTE: typescript module has been removed as runtime dependencies to yield smaller bundles, but this now requires it to be added as a devDependency: npm install --save-dev typescript

1.8.6:

  • Gracefully handle telemetry connection errors
  • TypeScript is now correctly a devDependency

1.7.4:

  • fix namespace for Lookup property
  • external-service-usage for premium code components and their domains
  • support for new property type 'Lookup.Simple'; see https://aka.ms/pcftypes
  • support for new property type 'MultiSelectOptionSet'

1.6.6:

  • error in compile task now correctly sets exit code != 0
  • cross platform support fixes

1.4.4:

  • Allow 'hidden' as a PCF property attribute
  • Manifest validation will use the word "problem" instead of "error" to avoid MSBuild misinterpretation

1.3.6:

  • Changes to ControlManifest.Input.xml
    • All of the resources except, "code" will take in an optional parameter as "outputDirectory".
    • This parameter when provided will copy the files to that path post build.
    • Only when the user provides "outputDirectory" param for any resource, the resource files will be placed into that folder post build and override the path present in "path" parameter.
    • Also, for "library", the optional 'outputDirectory' param is available for "packaged_library" node.
    • These changes will not affect existing behavior.

1.3.5:

  • Add 'File' to the list of allowed property datatypes
  • Support for 'common-property' in ControlManifest and test harness
  • Propagate changes in the width & height in the top container to changes in the underlying properties

1.3.1:

  • Virtual control disabled for PCF controls, not fully supported yet

1.2.6:

  • Localization updates
  • Enable virtual controls development
  • Added functionality to have a template override one of the "parent" files; for virtual controls, that is the package.json file
  • Control manifest:
    • Support boolean attribute "hidden"
    • Support external-service-usage element which declares whether this is a premium PCF control
  • Updated the version of PCF shipped

1.1.6:

  • Improved code validation on users control source code that helps avoiding runtime errors

1.0.6:

  • Production builds that generate bundle sizes larger than 5 MB will result in a build failure
  • Properties defined in ControlManifest.Input.xml must now define the 'usage' attribute

0.4.3:

  • Added anonymous telemetry to pcf; to opt out use PowerApps CLI, see: PowerApps CLI telemetry
  • Bug fixes:
    • Fix webpack build error when using TS path mappings based module resolution

0.3.4:

  • Improved manifest validation for controls with datasets
  • Fixed issue with preserving nested subfolder structure for control resources in the output folder

0.2.71:

  • React is no longer treated as an external library. Now tooling can bundle it directly with the custom component source code.
  • When building, relative paths used in the manifest are now preserved when generating the control output folder. For example, if a resource file is located in a control folder\css\subfolder, this subfolder path will be created in the output folder during build.
  • In support for future library sharing capabilities, we are removing the need for library definition in the ControlManifest.Input.xml. This will impact previously created components using library tag (please remove all libraries from the ControlManifest.Input.xml and replace them with an import statement in the index.ts).
  • Control author can include a preview image by setting the preview-image attribute in manifest's <control> node.
  • PCF UI is localized for: English, French, German, Japanese, Spanish

0.2.59:

  • PCF build output enhancements include:
    • Colorization
    • Timestamps
    • Formatting updates
    • PCF build now produces formal error codes in conjunction with error messages

0.1:

  • Initial set of capabilities for custom control development using the PowerApps Component Framework (PCF).